如何让FxCop理解“多案例”一词?

时间:2014-01-28 12:02:49

标签: c# fxcop

我在一家公司工作,他们的首字母缩略词类似于XyZ(大写后跟小写,后面再大写)。

这个词分布在我们所有的命名空间中。当我针对我们的项目运行FxCop时,它会指责IdentifiersShouldBeCasedCorrectlyCA1709)。建议只是将第一个字母(我不想要的)大写。

如何让FxCop明白单词XyZ已知,拼写正确并且正确套装? (换句话说,那就是写得很好

我在CustomDictionary.xml文件中添加了这个词:我添加了Recognized个字词; Unrecognized个字;以及AcronymsCasingExceptions。这些都没有产生任何影响。

我还验证了FxCop确实正在读取自定义词典文件,当我在首字母缩略词中添加另一个词时,它会停止报告为预期的套管错误(但仅适用于所有大写词)。

我正在使用FxCop 1.36(GUI one)和C#项目。


更新

仅将Xy添加到大小写异常似乎会让FxCop根据需要忽略XyZ

仍然不是一个很好的解决方案,因为当(仅)正确的XyX XyW时,它会允许XyZ或{{1}}这样的错误字词。

1 个答案:

答案 0 :(得分:2)

您可以将XyZ添加到FxCop字典中 - 请参阅How to: Customize the Code Analysis Dictionary

Code Analysis uses a built-in dictionary to check identifiers in your code for
errors in spelling, grammatical case, and other naming conventions of the .NET
Framework guidelines. You can create a custom dictionary Xml file to add, 
remove, or modify terms, abbreviations, and acronyms to the built-in dictionary.

<强>词典/缩略语/ CasingExceptions /缩写

<Dictionary>
      <Acronyms>
         <CasingExceptions>
            <Acronym>NESW</Acronym>   <!-- North East South West -->
            ...
         </CasingExceptions>
         ...
      </Acronyms>
      ...
</Dictionary>

Dictionary / Acronyms / CasingExceptions节点中的术语适用于以下代码分析规则:

CA1709: Identifiers should be cased correctly