有没有办法在代码中确定您正在运行的“解决方案配置”?例如,“调试”与“发布”?
我有一个服务,我想在调试中的 IDE 中测试,现在我设置了 bool,如果设置为 true 则运行“服务”(然后使用 OnStart 方法运行我的“主”方法),如果它设置为 false,我只运行“main”方法。这很好用,但我经常忘记在测试后重置 bool,然后当我去安装服务时失败,我必须返回,重置 bool,重新编译等。
如果我能以编程方式确定我在 IDE 中运行 Debug,那么我就能解决这个问题。
编辑: 在考虑这一点时,我想我最终真正需要的是确定我是否在 ide 中“播放”应用程序而不是 soulutions 配置。这将允许我在调试或其他配置中进行编译。
最简单的解决方案似乎是检查“System.Diagnostics.Debugger.IsAttached”
最佳答案
您不能直接查看解决方案配置,但可以使用一些线索“猜测”您所处的版本。例如,DEBUG 预处理器宏将仅在 C# 的调试解决方案配置中定义。
bool InDebugConfiguration() {
#if DEBUG
return true;
#else
return false;
#endif
}
关于c# - 确定解决方案配置 (Visual Studio),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1049471/