我想为一个MSBuild属性设置默认值。假设我从这里开始:
<Choose>
<When Condition="..something..">
<PropertyGroup>
...
<MySetting>true</MySetting>
<PropertyGroup>
</When>
...
</Choose>
如果条件不成立,那么MySetting将是''。所以这应该将其设置为false吗?
<PropertyGroup>
<MySetting Condition="'$(MySetting)'==''">false</MySetting>
</PropertyGroup>
以后,我想在条件语句中使用MySetting而无需测试“== 'true'”,像这样:
<PropertyGroup Condition="$(MySetting)">
...
</PropertyGroup>
当我在Visual Studio中加载这个项目时,它抱怨指定的条件"$(MySetting)"计算结果为""而不是布尔值。
因此,看起来我的检查条件是错误的,它检查“”以将属性赋值为false。我做错了什么?
<PropertyGroup><MySetting Condition="'$(MySetting)'==''">false</MySetting></PropertyGroup>
- Nick Craver