Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/logging/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 从xml文件加载System.Diagnostics.TraceSource的配置_C#_Logging_Tracesource - Fatal编程技术网

C# 从xml文件加载System.Diagnostics.TraceSource的配置

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

在log4net中,可以选择从
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>