【发布时间】:2014-02-17 12:49:06
【问题描述】:
仅当我的项目处于某些 bulid 配置中时,我才需要包含某些源文件。这可能吗?
我目前复制了Debug 和Release 并创建了DebugAlt 和ReleaseAlt。我只需要在 Debug 和 Release 中编译某些表单,并在备用配置中排除它们。
我可以将这样的内容写入.csproj 文件吗?
<Compile Include="frmTools.cs" Condition="CONFIG=Debug OR Config=Release"/>
更新:
根据MS Build docs,这应该是可能的:
<Choose>
<When Condition="'$(Configuration)'=='Debug'">
<ItemGroup>
<Compile Include="frmTools.cs">
<SubType>Form</SubType>
</Compile>
</ItemGroup>
</When>
</Choose>
这工作了一半;该项目加载完美,但frmTools 永远不会编译。这是因为当条件总是评估为假。为什么?我做错了什么?
【问题讨论】:
-
这到底有什么意义?您无需为程序不使用的代码付费。
-
汉斯,这个(对我来说)的重点是能够在一个不能在发布版本中的项目中保留调试类和表单。
标签: c# build compilation