
嗨,我正在尝试在.NET中实现自定义跟踪侦听器,但是在通过配置文件添加跟踪侦听器时遇到问题.
我在堆栈溢出时发现了一个类似的帖子,但它似乎没有帮助(How to define custom TraceListener in app.config).
异常消息是:
ConfigurationErrorsException –
“无法创建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,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(string name):base(name)
{
}
总结以上是内存溢出为你收集整理的c# – 无法通过app config连接自定义tracelistener类 – ConfigurationErrorsException全部内容,希望文章能够帮你解决c# – 无法通过app config连接自定义tracelistener类 – ConfigurationErrorsException所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)