尝试在 C# 中简化条件编译的步骤
Posted
技术标签:
【中文标题】尝试在 C# 中简化条件编译的步骤【英文标题】:Trying to simplify the steps for Conditional Compilation in C# 【发布时间】:2012-04-03 15:37:59 【问题描述】:背景:
我要做的是根据我在给定时间点所需的配置集在 VS2008 IDE 中为我的项目自定义构建过程。
我的项目有一些条件方法,例如 [Conditional("FULLFEATURE")] 或 [Conditional("LESSFEATURE")] 仅当我在 Build 中提及 FULLFEATURE 或 LESSFEATURE 条件编译符号时才执行项目属性。
这种方法很费力,因为每次我必须通过(VSNET IDE)编译时,我必须根据我的要求手动添加编译符号。
问题
有没有办法可以避免这种情况(为每个功能维护两个不同的项目副本,不,我不想要这种方法)?
有没有办法通过配置管理器,我可以从中选择一个
FULLFEATURE --> Debug ---> x86
FULLFEATURE --> Debug ---> AnyCPU
FULLFEATURE --> Release ---> x86
FULLFEATURE --> Release ---> AnyCPU
LESSFEATURE --> Debug ---> x86
LESSFEATURE--> Debug ---> AnyCPU
LESSFEATURE--> Release ---> x86
LESSFEATURE--> Release ---> AnyCPU
构建我需要的任何配置。 我知道如果我有更多的条件编译符号,这种方法会变得很糟糕。但我在这里..
欢迎任何建议
干杯
【问题讨论】:
为什么不能使用配置管理器来创建四个独立的构建配置? 我之前使用MSBUILD
脚本完成了此操作,该脚本设置条件、编译、更改条件、编译到不同的输出目录。
@Boo : 我知道我们可以使用 MSBUILD 做到这一点,这就是我特别提到 VS2008 IDE 的原因
【参考方案1】:
构建 + 配置管理器。使用左上角标有“活动解决方案配置”的组合框并选择New...
。键入新名称。项目+属性,构建选项卡并设置您的条件。现在,每个配置都有自己的条件。
您现在只需使用工具栏上的配置选择器在配置之间切换,并根据需要进行构建/调试。
【讨论】:
非常感谢.. 虽然我试过了,但我认为更改构建配置会覆盖旧配置。我真傻。!以上是关于尝试在 C# 中简化条件编译的步骤的主要内容,如果未能解决你的问题,请参考以下文章