c# – 与PCL库中的System.Diagnostics.Trace等效

我很惊讶地发现System.Diagnostics.Trace未包含在可移植类库配置文件中.但是,System.Diagnostics.Debug可用.

我正在将库移植到PCL,并且通常使用Trace语句为消费者提供额外的故障排除.出于性能原因,我希望对程序集进行优化,因此我只在NuGet包中发布程序集的Release版本.

我的理解是System.Diagnostics.Debug的方法是有条件编译的,因此仅在程序集包含DEBUG指令时才有用.

如果我更改我的代码以使用System.Diagnostics.Debug然后在Release中编译该方法是没用的 – 在PCL中是否有System.Diagnostics.Trace的替代方法,或者我是否必须在我的发布版本中包含DEBUG指令?或者我应该考虑另一种方法吗?

解决方法

您可以在单个C#文件中指定条件编译指令.因此,您可以围绕Debug.Trace创建自己的包装器,并为该代码文件定义DEBUG指令,这将允许您从发行版DLL调用Debug.Trace.

相关文章

原文地址:http://msdn.microsoft.com/en-us/magazine/cc163...
前言 随着近些年微服务的流行,有越来越多的开发者和团队所采...
最近因为比较忙,好久没有写博客了,这篇主要给大家分享一下...
在多核CPU在今天和不久的将来,计算机将拥有更多的内核,Mic...
c语言输入成绩怎么判断等级
字符型数据在内存中的存储形式是什么