C# 在Visual Studio代码分析中使用CustomDictionary.xml来分析大小写复杂的标识符

C# 在Visual Studio代码分析中使用CustomDictionary.xml来分析大小写复杂的标识符,c#,.net,visual-studio-2008,code-analysis,fxcop,C#,.net,Visual Studio 2008,Code Analysis,Fxcop,例如,像iPhone这样的标识符。 当我运行代码分析时,它给了我以下错误: CA1709:Microsoft。命名:正确 命名空间名称中“i”的大小写 将“iPhone.Example”更改为 “我” 我尝试向CustomDictionary.xml添加一个条目,如下所示: <Words> <Recognized> <Word>iphone</Word> </Recognized> </Words&

例如,像iPhone这样的标识符。 当我运行代码分析时,它给了我以下错误:

CA1709:Microsoft。命名:正确 命名空间名称中“i”的大小写 将“iPhone.Example”更改为 “我”

我尝试向
CustomDictionary.xml
添加一个条目,如下所示:

<Words>
    <Recognized>
        <Word>iphone</Word>
    </Recognized>
</Words>

苹果手机
然后它仍然给了我同样的错误,还有一个错误,如下所示:

<Compound>
    <Term CompoundAlternate="IPhone">iphone</Term>
</Compound>
<DiscreteExceptions>
    <Term>iphone</Term>
</DiscreteExceptions>
<Acronyms>
    <CasingExceptions>
        <Acronym>iPhone</Acronym>
    </CasingExceptions>
</Acronyms>
CA1702:Microsoft。命名: 命名空间中的复合词“iPhone” 名称“iPhone.Example”作为 离散项。如果你的用法是 用于单个单词,按大小写 “iphone”

然后,我又添加了一些规则,如下所示:

<Compound>
    <Term CompoundAlternate="IPhone">iphone</Term>
</Compound>
<DiscreteExceptions>
    <Term>iphone</Term>
</DiscreteExceptions>
<Acronyms>
    <CasingExceptions>
        <Acronym>iPhone</Acronym>
    </CasingExceptions>
</Acronyms>

苹果手机
苹果手机
苹果手机
但这没有任何区别。是否还要添加此类异常


提前感谢。

您添加到词典中的任何内容都不会避免原始的CA1709冲突,因为问题与拼写无关。相反,问题在于第一个字母没有大写,这违反了名称空间名称的Pascal大小写约定。

谢谢您的回答。字典还提供了CasingExceptions列,所以我认为它应该能够处理的不仅仅是拼写。那么,你知道如何在不抑制错误的情况下做到这一点吗?CasingExceptions内容用于其他目的(即:区分CA1709规则中2个和3个字母首字母缩写词的所有大写字母和pascal大小写部分)。它们不会被CA1709规则逻辑中验证名称空间名称的第一个字母是否应为大写字母的部分使用。好的,在这种情况下,确实没有办法这样做。感谢您花时间回答,尽管这不是我想要的答案:-)