gpt4 book ai didi

c# - 无法通过应用程序配置连接自定义跟踪监听器类 - ConfigurationErrorsException

转载 作者:太空狗 更新时间:2023-10-29 21:07:08 27 4
gpt4 key购买 nike

更新 - 现在不需要回答这个问题,我已经在下面解决了。

您好,我正在尝试在 .NET 中实现自定义跟踪监听器,但在通过配置文件添加跟踪监听器时遇到问题。

我在堆栈溢出上找到了类似的帖子,但它似乎没有帮助(How to define custom TraceListener in app.config)。

异常信息是:

配置错误异常 -“无法创建 ApplicationFramework.TraceListeners.TextLogTraceListener、ApplicationFramework.TraceListeners、Version=1.0.0.0、Culture=neutral、PublicKeyToken=null。”

正如您在下面的代码中看到的,我什至在尝试不使用 AssemblyQualified 名称后使用了该名称。

config 和 dll 存在于引用监听器的应用程序中。

谁能发现我这里可能做错了什么?

C#代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;

namespace ApplicationFramework.TraceListeners
{
public class TextLogTraceListener : System.Diagnostics.TextWriterTraceListener
{
public override void Write( string message )
{
using (FileStream fs = new FileStream( "C:\\Test\\trace.log", FileMode.Append ))
{
StreamWriter sw = new StreamWriter( fs );

sw.Write( message );
}
}

public override void WriteLine( string message )
{
using (FileStream fs = new FileStream( "C:\\Test\\trace.log", FileMode.Append ))
{
StreamWriter sw = new StreamWriter( fs );

sw.Write( message );
}
}
}
}

配置:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>

<system.diagnostics>

<trace autoflush="true" indentsize="4">
<listeners>
<add name="TextListener"
type="ApplicationFramework.TraceListeners.TextLogTraceListener, ApplicationFramework.TraceListeners, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
initializeData="trace.log" />
<remove name="Default" />
</listeners>
</trace>

</system.diagnostics>

</configuration>

引用应用程序中的简单跟踪调用:

Trace.WriteLine( "Test" );

最佳答案

不用担心,我现在已经解决了这个问题。

我需要覆盖其中一个构造函数重载:

public TextLogTraceListener( 字符串名称 ) : base( 名称 ){

关于c# - 无法通过应用程序配置连接自定义跟踪监听器类 - ConfigurationErrorsException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3541095/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com