【发布时间】:2014-09-19 18:22:56
【问题描述】:
我有 .net C# 应用程序。在应用程序中有两组代码用于不同的客户端。
我们正在考虑通过预处理器删除部分代码。使用配置文件参数禁用部分对我们来说不是一个选项。
我们想要简单的设置,例如:
#define DEBUG
//....
#if DEBUG
Console.WriteLine("Debug version");
#endif
唯一的问题是,我们的部分代码分布在解决方案中的多个文件和多个项目中。
所以我们想在一个地方全局定义预处理器“DEBUG”。最好在项目属性什么的。
对我们来说最好的选择是什么?
【问题讨论】:
-
在不知道您的推理的情况下,我强烈建议您不要使用这种做法。将客户端细节重构为接口并为每个客户提供实现可能会为您省去维护上的麻烦。
-
我们处理这类事情的方式与 paulroho 建议的完全一样。这比尝试处理不同的构建要好得多
标签: c# .net visual-studio c-preprocessor preprocessor-directive