C# 从xml文件加载System.Diagnostics.TraceSource的配置
在log4net中,可以选择从C# 从xml文件加载System.Diagnostics.TraceSource的配置,c#,logging,tracesource,C#,Logging,Tracesource,在log4net中,可以选择从app.config加载配置,或者从任意xml文件加载配置 是否可以从任意xml文件加载System.Diagnostics.TraceSource的配置?System.Diagnostics类仅查看应用程序配置文件。例如,报告的备注部分说: 要配置SourceSwitch,请编辑以下配置文件: 对应于应用程序的名称 如果您查看代码,您将看到这些类在内部使用静态diagnosticsconfiguration类,该类仅从当前app.config获取system.di
app.config
加载配置,或者从任意xml文件加载配置
是否可以从任意xml文件加载System.Diagnostics.TraceSource的配置?System.Diagnostics类仅查看应用程序配置文件。例如,报告的备注部分说: 要配置SourceSwitch,请编辑以下配置文件: 对应于应用程序的名称 如果您查看代码,您将看到这些类在内部使用静态
diagnosticsconfiguration
类,该类仅从当前app.config获取system.diagnostics
configuration部分
但是您可以将system.diagnostics
配置部分移动到单独的xml文件中。只需指定将在其中定义节的文件名:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.diagnostics configSource="diagnostics.xml"/>
</configuration>
diagnostics.xml
<system.diagnostics>
<sources>
<source name="foo" switchName="bar"
switchType="System.Diagnostics.SourceSwitch">
<listeners>
<add name="console"/>
</listeners>
</source>
</sources>
<switches>
<add name="bar" value="Warning"/>
</switches>
<sharedListeners>
<add name="console"
type="System.Diagnostics.ConsoleTraceListener" initializeData="false"/>
</sharedListeners>
<trace autoflush="true" indentsize="4">
<listeners>
<add name="console"/>
</listeners>
</trace>
</system.diagnostics>