可以将属性初始化为 PropertyGroup
中的默认值,如下所示:
<PropertyGroup>
<MyProperty Condition="$(MyProperty) == ''">MyDefaultValue</MyProperty>
</PropertyGroup>
是否可以通过 Items 实现相同的效果?:
<ItempGroup>
<MyItems Condition="MyItems is no defined" Include="MyDefaultFile.ext;"/>
</ItemGroup>
目前我正在做:
<ItemGroup>
<MyItems Condition="!Exists(@(MyItems))" Include="MyDefaultFile.ext;"/>
</ItemGroup>
但我认为这不是一个好主意(即 MyItems
中的文件可能不存在,而 MyItems
可能已定义)
最佳答案
在 ItemGroup
级别设置条件:
<ItemGroup Condition="'@(MyItems)' == ''">
<MyItems Include="MyDefaultFile.ext" />
</ItemGroup>
您还可以使用ItemDefinitionGroup
初始化默认元数据值。
关于msbuild - 如何使用默认值初始化 ItemGroup 中的项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9672511/