【发布时间】:2011-01-01 16:24:22
【问题描述】:
FxCop 想让我用大写 N 拼写用户名(即用户名),因为它是一个复合词。然而,由于一致性的原因,我们需要用小写的 n 来拼写 - 所以无论是用户名还是用户名。
我尝试通过将以下部分添加到该部分来调整 CodeAnalysisDictionary.xml:
<DiscreteExceptions>
<Term>username</Term>
</DiscreteExceptions>
据我了解自定义词典的工作原理,这应该告诉 FxCop 将用户名视为一个离散术语,并防止 CompoundWordsShouldBeCasedCorrectly (CA1702) 检查引发错误。
不幸的是,这不起作用。有谁知道为什么会这样以及如何解决这个问题?我不想添加抑制,因为这会严重混淆 GlobalSuppressions 文件,因为出现的次数很多。
编辑添加:目前我已经通过使用 GlobalSuppressions 解决了这个问题,但考虑到问题的性质,这似乎不是解决这个问题的理想方法。任何人都可以提示在哪里寻找有关 FxCop 如何应用字典中定义的规则的更多信息?
【问题讨论】:
-
您确定 FxCop 正在加载和使用您的文件 - 例如,它是否正在应用其他规则?
-
你检查过这个问题吗? stackoverflow.com/questions/359290/…
-
@Jeff Sternal:我使用了现有的 CodeAnalysisDictionary.xml,它已经进行了自定义。我刚刚删除了一些现有条目,正如预期的那样,我现在收到了更多警告,因此通常 FxCop 可以识别字典并正确应用附加术语和单词。 @Austin Salonen:是的,我做到了,但我找不到任何适用于我的具体问题的东西。字典本身可以工作,但它似乎并没有像我期望的那样将用户名视为一个离散的术语。