Visual Studio中的条件编译(C#)

Ear*_*rlz 0 c# visual-studio

我试图使它成为可以使我们的应用程序基于预处理器指令的存在而表现不同.我已经读过你可以根据你做的构建创建构建配置来定义不同的预处理器指令.好吧,我在Visual Studio中没有看到任何内容.我知道如何从命令行执行此操作,但不知道如何在VS 2008的自动化环境中执行此操作.

有人能告诉我如何创建一个新的构建配置,其中设置了预处理器指令吗?

此外,不确定它是否与它有任何关系,但我们的项目是一个ASP.Net网站

And*_*ite 6

如果右键单击项目并选择"属性",然后选择"构建"选项卡,则可以在"条件编译符号"中输入自定义编译符号.

例如,如果您的代码如下所示:

#if DEBUG
// do something
#else
// do something else
#end
Run Code Online (Sandbox Code Playgroud)

您可以将"DEBUG"设置为条件编译符号.

您可以通过更改"配置"下拉列表为不同的构建配置设置不同的值.


JMa*_*sch 6

我甚至没有看到控制DEBUG符号的方法,它是一个ASP.Net网站

好的,有问题.ASP.net网站选项可以减少对构建等的控制,因为它甚至不使用项目文件.

如果切换完全可行,请切换到ASP.net Web应用程序.Web应用程序的行为更像典型的C#项目(您有一个项目文件,csproj文件的内容控制应用程序中的内容而不仅仅是目录结构等.

转换后,您应该看到您期望的选项.

这是一个转换方向的链接:如何将ASP.NET网站转换为ASP.NET Web应用程序