3

私が取り組んでいるプロジェクトの 1 つで FxCop を実行したところ、次のような大量の警告が表示されました。

CA1703 : Microsoft.Naming: 名前 'MyString' で参照されるリソース 'MyProject.Properties.Resources.resx' で、文字列値 'Some format string: {0:dMMMyyyy}' の 'Myyyy' のスペルを修正してください

Resources は生成されたクラスであるため、通常のメカニズムを使用してこれらのメッセージを単純に抑制することはできません。この問題をどのように回避できるか、誰もが明るいアイデアを持っていますか?

編集: 明確にするために (これが Team System とまったく異なることに気づいていなかったため)、Team System 以外のソリューション、特に MS Visual Studio Pro 2008 に興味があります。

4

4 に答える 4

3

リソースに命名規則を適用したくない場合は、プロジェクト設定でこの規則をオフにしてください。

  1. プロジェクトツリーでプロジェクトを右クリック
  2. 「プロパティ」をクリック
  3. 「コード分析」タブに移動します
  4. ブランチ「命名規則」を展開します
  5. CA1703 を無効にする

特定のリソースを抑制したい場合は、グローバル抑制ファイルでそれらを抑制できます。これは通常、Visual Studio のエラー一覧でマウスの右キーを押すと利用できます。

  1. エラー リストで CA メッセージを右クリックします。
  2. 「メッセージを抑制する」を選択します
  3. 「プロジェクト抑制ファイル内」を選択します
于 2009-08-06T09:55:28.400 に答える
3

アセンブリのニュートラル言語を何も設定しないでリソースのスペル チェックを無効にすることになりました。つまり、AssemblyInfo.cs に次の行を追加しました。

[assembly: NeutralResourcesLanguage("")]

これはここで提案されているとおりです。

于 2009-08-12T08:57:23.947 に答える
1

プロジェクト全体のルールをオフにするか、すべての違反を手動で除外する代わりに、以下で生成されたコードの分析をオフにすることができます。

Project > Options > Spelling & Analysis
Check Suppress analysis results against generated code
于 2009-08-06T10:04:19.317 に答える
1

FxCop (スタンドアロン) と統合されたコード分析は、どちらもカス​​タム ディクショナリの使用をサポートしています。

CustomDictionary.xml という名前のファイルを作成します。ノードの下に新しい単語 (大文字と小文字を区別しない) を含む次の XML 構造を追加します。

<Dictionary>
    <Words>
        <Recognized>
               <Word>aNewWord</Word>
               <Word>AnotherNewWord</Word>
        </Recognized>
    </Words>
</Dictionary>

すべてのプロジェクトでディクショナリを使用するには、ファイルを FxCop インストール ディレクトリ (通常は C:\Program Files\Microsoft FxCop) に配置します。プロジェクト固有の辞書の場合は、ファイルをプロジェクト ファイルと一緒に別のディレクトリに配置します。単語が認識されるようにするには、ユーザー辞書を作成または変更した後、FxCop を閉じて再起動する必要があります。ファイルを Visual Studio プロジェクトに含めて、[ビルド アクション ファイル] プロパティを に設定することもできますCodeAnalysisDictionary

于 2009-08-10T03:25:50.157 に答える