观察msbuild脚本的以下部分:
<ItemGroup>
<R Include="-Microsoft.Design#CA1000" />
<R Include="-Microsoft.Design#CA1002" />
</ItemGroup>
我想把它转换成
/ruleid:-Microsoft.Design#CA1000 /ruleid:-Microsoft.Design#CA1002
现在,我想到的最好的办法是
@(R -> '/ruleid:%(Identity)')
但这只会产生
/ruleid:-Microsoft.Design#CA1000;/ruleid:-Microsoft.Design#CA1002
注意分隔两个规则的分号,而不是空格。这很糟糕,它没有被fxcop识别-我需要一个空间。
现在,这是一个简单的例子,所以我可以这样声明:
<PropertyGroup>
<R>/ruleid:-Microsoft.Design#CA1000 /ruleid:-Microsoft.Design#CA1002</R
</PropertyGroup>
但是,我不喜欢这样,因为实际上我有很多规则想要禁用,并且像这样列出所有规则,这是我想要避免的。