【问题标题】:Trace does not create file for outputTrace 不会为输出创建文件
【发布时间】:2014-05-22 11:15:26
【问题描述】:

这是在 app.config 中定义的跟踪监听器:

  <system.diagnostics>
    <trace autoflush="true" indentsize="4">
      <listeners>
        <add name="Listener" type="System.Diagnostics.TextWriterTraceListener" initializeData="Import.log" traceOutputOptions="None" />
        <remove name="Default" />
      </listeners>
    </trace>
  </system.diagnostics>

以及调用Trace.WriteLine的简单方法:

  public static void WriteLine(LogLevel logLevel, string message)
  {
       var message = String.Format("{0}", messageText);

       Trace.WriteLine(message);   
  }

但是结果 - 那里没有创建文件和消息。我认为原因可能在于在程序集之外调用的方法。但这看起来是不可能的。 有没有我错过的其他设置?提前致谢。

【问题讨论】:

  • 有写入该路径的应用程序权限吗?
  • 是的,它是普通文件夹。

标签: c# trace


【解决方案1】:

实际上,问题在于带有日志记录的静态方法是从另一个程序集调用的。我想出了两种解决方案:

  • 在构建后将app.config 复制(或手动复制)到包含程序集的文件夹中 那个方法;
  • executing 程序集的 app.config 中使用跟踪选项声明诊断部分。

【讨论】:

    猜你喜欢
    • 2010-12-18
    • 1970-01-01
    • 1970-01-01
    • 2022-08-08
    • 2021-07-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多