以编程方式检查构建配置

时间:2016-07-15 12:40:30

标签: c# .net c-preprocessor preprocessor-directive

使用DEBUG配置,我可以使用这种语法打开和关闭行为:

#if DEBUG
    Console.WriteLine("Debug");
#else
    Console.WriteLine("Not Debug");
#endif

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

#if TEST
    Console.WriteLine("Test");
#else
    Console.WriteLine("Not Test");
#endif

有没有办法检查这些?

2 个答案:

答案 0 :(得分:6)

<Project>常量是一个特殊的常量,并且每个配置中的每个项目都有一个设置,无论是否应该定义。默认情况下它位于DEBUG并且位于Debug关闭,但它完全可配置 - 打开项目的属性页面并查看&#34; Build&# 34;,并且那里有一个复选框,上面写着&#34;定义DEBUG常数。&#34;

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

要创建编译常量,请将其添加到&#34;条件编译符号&#34;的列表中。 - 但请确保在正确的构建配置中这样做。

答案 1 :(得分:6)

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

如果您需要使用额外的常量,只需在条件编译符号中输入您自己的常量。

您案件的步骤:

  1. 转到您的项目 - &gt;属性 - &gt;建立
  2. 将配置切换为测试
  3. 输入TEST到条件编译符号字段
  4. 运行您的代码并享受:)