好的,今天另一个FxCop问题。
我已经阅读了有关IdentifiersShouldBeCasedCorrectly规则的论据,以及它是否应该是“XML”或“Xml”。好吧,我是一个“XML”家伙,我希望保持这种状态。因此,我不希望FxCop一直纠正我。
我一直只在特定情况下使用SuppressMessage属性。我还使用FxCop标记了大量错误,并将它们作为“模块”级别的SuppressMessage语句复制到assemblyinfo.cs中。这非常有效。
但是,现在我真的想全局禁用这个烦人的IdentifiersShouldBeCasedCorrectly规则。我正在使用TeamCity 5.0.3,并且我没有使用FxCop项目文件(但是,我可以这样做)。我希望我可以将一个参数传递给FxCopCmd,告诉它忽略这个错误,但它从文档中看起来并不那样。
那么......在TeamCity构建服务器上创建FxCop项目文件并将其用于FxCop构建运行器时,我能做些什么吗?
答案 0 :(得分:0)
查看FxCop的安装目录(我的是c:/ program files / microsoft fxcop 1.36)。该目录中应该有一个CustomDictionary.xml文件。您可以将XML添加到CustomDictionary.xml末尾的CasingExceptions部分,并且将忽略该机器上所有项目的所有命名空间和函数名称元素的XML大小写(除非在命令行上覆盖CustomDictionary.xml,当然)。
您还可以将CustomDictionary.xml复制到项目目录,并在项目目录副本的CasingExceptions部分中添加XML。我认为这将自动找到,不需要FxCop项目文件,只会用于该项目。
这就是我为TeamCity构建所做的,但我需要一个FxCop项目文件,原因是其他原因,所以我不记得(并且无法检查)FxCop是否会自动找到CustomDictionary.xml。
示例:
<Acronyms>
<CasingExceptions>
<Acronym>Pi</Acronym>
<Acronym>Na</Acronym> <!-- NaN -->
<Acronym>NESW</Acronym> <!-- North East South West -->
<Acronym>NWSE</Acronym> <!-- North West South East -->
<Acronym>XML</Acronym> <!-- XML -->
</CasingExceptions>
在MSDN FxCop FAQ忽略单词的例子略有不同 希望这有帮助!