我的第三方库之一有一个许可文件,每次我们在VS中加载设计器时它总是添加到csproj文件中。如果我只是忽略该文件,我仍然需要从解决方案资源管理器中删除VS,并且在推送到我们的源代码管理之前我往往会忘记它,因为它不需要。如果有一种方法可以删除BeforeBuild目标中的条目或类似的条目(如果找到)?
以下是我希望在构建期间在每个构建中删除的内容:
<ItemGroup>
...
<EmbeddedResource Include="Properties\licenses.licx" />
...
</ItemGroup>
这是一个好的开始,但我无法弄清楚如何修改我的需求:Remove MSBuild DLL reference regardless of version (by wildcard) in VS 2015
答案 0 :(得分:1)
您可以创建在配置上设置的属性 并测试条件以包含文件
像这样:
<PropertyGroup Condition="'$(Configuration)' == 'Release'">
<WithLicense>1</WithLicense>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)' == 'Debug'">
<WithLicense>0</WithLicense>
</PropertyGroup>
<ItemGroup>
...
<EmbeddedResource Include="Properties\licenses.licx" Condition="$(WithLicense)==1"/>
...
</ItemGroup>