我有一个Asp.Net(Web Api)项目。在这个项目中,我引用了另一个类库项目。

在引用的类库中编写的跟踪不会显示在我的日志中。

如何使用System.Diagnostics将两个项目的痕迹显示在同一日志中?换句话说,如何使引用的类库使用Api项目中的web.config诊断设置?如果无法做到这一点,那么我如何才能完全在日志中获取在引用的类库中编写的跟踪?

我试图将System.Diagnostics设置从web.config添加到app.config,但这似乎什么都没做。

api项目:

TraceSource source = new TraceSource("MyProject");
source.TraceEvent(TraceEventType.Information, 1, "My logged Trace");


引用的类库:

TraceSource source = new TraceSource("MyProject");
source.TraceEvent(TraceEventType.Information, 1, "My disappearing Trace");


Web.config

<system.diagnostics>
  <sources>
    <source name="MyProject" switchValue="All">
      <listeners>
        <clear />
        <add name="log" />
      </listeners>
    </source>
  </sources>
  <sharedListeners>
    <add name="log"
         type="System.Diagnostics.XmlWriterTraceListener"
         initializeData="Log.svclog"
    />
  </sharedListeners>
  <trace autoflush="true"/>
</system.diagnostics>

最佳答案

您需要根据跟踪源的类库配置来配置跟踪侦听器。您拥有代码吗?

http://msdn.microsoft.com/en-us/library/4y5y10s7.aspx

http://msdn.microsoft.com/en-us/library/ms228993.aspx

http://msdn.microsoft.com/en-us/library/ms228984.aspx

关于c# - 引用的类库项目中的System.Diagnostics.Trace,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15503200/

10-13 08:02