9

如何确定项目是否在 MSBuild .targets 文件中以调试(或发布)模式构建,并将此信息用作另一个属性的条件?

就像是:

<OutDir Condition="IsDebug">bin\Debug\$(SomeOtherProperty)\</OutDir>
<OutDir Condition="!IsDebug">bin\Release\$(SomeOtherProperty)\</OutDir>

是否有诸如调试/发布模式之类的东西,或者它们只是不同配置属性值集的常规名称?

4

1 回答 1

15

Debug/Release 或其他只是Configuration属性的常规值。

因此,只要包含/调用您的 .targets 文件的项目遵守约定;您可以按如下方式检查调试模式:

<OutDir>bin\Release\$(SomeOtherProperty)\</OutDir>
<OutDir Condition=" '$(Configuration)' == 'Debug' ">bin\Debug\$(SomeOtherProperty)\</OutDir>

或者您可以直接使用该变量:

<OutDir>bin\$(Configuration)\$(SomeOtherProperty)\</OutDir>
于 2013-12-27T13:09:50.330 回答