使用 Debug.WriteLine 发布构建的 DLL

本文关键字:构建 DLL Debug WriteLine 布构建 使用 | 更新日期: 2023-09-27 18:33:24

如果我在发布模式下构建 DLL,随后在链接时在调试版本中使用它,调试语句会丢失吗?

我问的原因是我们有一个记录器,它可以在调试时选择性地写入输出窗口。此代码所在的 DLL 最终将在发布模式下构建,并在其他地方用作依赖项。在调试中使用依赖项应用程序时,我希望出现语句。生成 DLL 时是否会剥离它们?

编辑:由于重复而关闭,干杯!

使用 Debug.WriteLine 发布构建的 DLL

如果你看一下Debug.WriteLine方法的代码,你会看到:

[Conditional("DEBUG")]
public static void WriteLine(string message, string category)
{
    TraceInternal.WriteLine(message, category);
}

所以基本上,只有当你设置了DEBUG标志时,才会编译对此方法的调用。通常,在使用项目的Debug配置时。