system.diagnostics - 我收到 ConfigurationErrorsException "Couldn' t find constructor for class CustomListener”

标签 system.diagnostics tracelistener

这与自定义一个 Systems.Diagnostics.TraceListener 有关

<system.diagnostics>
    <sources>
        <source name="SomeTraceSourceName" 
            switchType="System.Diagnostics.SourceSwitch" 
            switchName="SomeSwitchName">
            <listeners>
                <clear />
                <add name="CustomListener"/>
            </listeners>
        </source>
    </sources>
    <sharedListeners>
        <add name="CustomListener"
            type="CustomListener, MyAssembly" 
            initializeData=""/>
    </sharedListeners>
    <switches>
        <add name="SomeSwitchName" value="4"  />
    </switches>
</system.diagnostics>

默认跟踪监听器不会发生这种情况。

我找到了这个 MSDN post ,但最终证明它没有帮助。

最佳答案

找到了 - 花了很长时间。

关键是这部分:

<add name="CustomListener"
            type="CustomListener, MyAssembly" 
            initializeData=""/>

当 intializationData 是一个空字符串时,它将寻找一个没有参数的构造函数。一旦我添加了 initializeData 的值,框架就会找到构造函数。

错误应该是“没有带 0 个参数的构造函数,也许你需要包含一些 initializeData”

关于system.diagnostics - 我收到 ConfigurationErrorsException "Couldn' t find constructor for class CustomListener”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8595845/

相关文章:

.net - AverageTimer32 计数器值变为零

c# - 跨线程的 TraceSource 不起作用?

c# - 将 C# 中命令行的输入流从 "Csvmidi.exe file.text file.midi"更改为 "Csvmidi.exe inputString file.midi"

c# - 获取到 Console.WriteLine 的事件 Hook

c# - C#中的cmd命令

c# - 我可以关闭对我的代码引用的单个程序集的跟踪吗?

c# - .Net 自定义 TraceListener.TraceEvent 未触发

c# - 有没有办法在 C# 中捕获调试消息,然后将它们输出到单独的窗口?

.net - 如何将 .NET TraceListener 配置为登录到 TEMP 文件夹

c# - 如何监控 console.out?