跟踪到 DLL

Traces into DLL

我的项目有一个引用的 dll,它使用 TraceSource 进行跟踪,但它不工作。我在dll项目中的代码是这样的:

private static readonly TraceSource ts = new TraceSource("DataSource");
...
ts.TraceInformation(string.Format("Info: {0}", mess));

在应用程序项目中(我导入 DLL 的地方)App.config:

<system.diagnostics>
    <trace autoflush="true" indentsize="4">
      <listeners>
        <add name="MyListener" />
        <remove name="Default" />
      </listeners>
    </trace>

    <sources>
      <source name="DataSource" switchValue="All">
        <listeners>
          <remove name="Default"/>
          <add name="MyListener"/>
        </listeners>
      </source>
    </sources>

    <sharedListeners>
      <add name="MyListener"
        type="System.Diagnostics.TextWriterTraceListener"
        initializeData="c:\temp\DefaultWriterOutput.log" />

    </sharedListeners>
  </system.diagnostics>

当我使用带有跟踪的引用项目时,一切正常,但是当我导入 dll 时,跟踪不起作用。是不是配置有问题?

我忘记了我的 DLL 项目使用的是 Nuget 配置(不是 Release)。 :( 我将项目属性中的 TRACE 常量设置到 Nuget 配置中,它起作用了。