【发布时间】:2018-03-06 08:11:10
【问题描述】:
我的设置文件中有一个名为 DebugMode 的属性,它是布尔类型。在测试新功能并同时控制生产版本时非常有用。
我想知道是否有一些名为 DebugMode 的内置属性,我可以使用它来控制哪些功能进入生产环境,哪些功能仅用于测试?
或者可能有调试级别,例如警告、消息、错误、严重错误或类似的东西?
是的,有一个类叫
System.Diagnostics.Debugger
但我不知道如何使用它。
如果问题太基本,我将删除。
【问题讨论】:
-
“如果这个问题太基本,我会删除它。” 你应该 - 你一次问多个问题。如果您想区分发布版本和调试版本,请使用构建配置和几个预处理器指令。
-
Aham,所以我应该多了解一下构建配置。
-
是的,但是请记住,这些设置在运行时无法更改 - 这实际上很好,因为所有 if 都不会被编译,并且您的代码会变得更快,并且更小。
-
@ManfredRadlwimmer 好的。因此,即使我使用构建配置,在构建发布时如何禁用正在开发的功能?我再次认为这一切都归结为 *.settings 文件或项目配置文件中的属性。没有把握。有没有办法检查我是为发布还是使用代码进行调试?
-
@ManfredRadlwimmer Aham 我明白了。如果在 Debug 配置中,#if DEBUG #endif 将执行其中的内容,如果在 Release 构建配置中,则不会执行预处理器指令中的内容。整洁的! :)
标签: c# .net debugging visual-studio-debugging