以编程方式检查构建配置

Pau*_*els 10 .net c# c-preprocessor preprocessor-directive

使用DEBUG配置,我可以使用以下类型的语法打开和关闭行为:

#if DEBUG
    Console.WriteLine("Debug");
#else
    Console.WriteLine("Not Debug");
#endif
Run Code Online (Sandbox Code Playgroud)

但是,如果我设置了不同的配置,请说:TEST然后这不起作用:

#if TEST
    Console.WriteLine("Test");
#else
    Console.WriteLine("Not Test");
#endif
Run Code Online (Sandbox Code Playgroud)

有没有办法检查这些?

小智 7

是的,您可以使用其他配置。如果在配置管理器中选择“调试配置”,则将自动生成DEBUG符号。您可以检查一下。转到您的项目->属性->构建->定义DEBUG常量

如果需要使用其他常量,只需在条件编译符号中输入自己的常量即可。

针对您的情况的步骤:

  1. 转到您的项目->属性->构建
  2. 将配置切换到测试
  3. 输入测试到条件编译符号字段

运行您的代码并享受:)


Tom*_*han 6

DEBUG常量是一个特殊的常量,每个配置中的每个项目都有一个设置是否应该定义.默认情况下它是打开Debug和关闭的Release,但是它是完全可配置的 - 打开项目的属性页面并查看"Build",然后有一个复选框,上面写着"定义DEBUG常量".

因此,定义新的构建配置并不会自动为您提供任何其他编译常量.但这并不意味着您无法手动创建它们.

要创建编译常量,请将其添加到"条件编译符号"列表中 - 但请确保在正确的构建配置中执行此操作.