質問
まだ使用してアセンブリの残りの部分を分析しながら、すべてのFxCopの分析から、完全な名前空間を除外することは可能ですSuppressMessageAttribute
?
私の現在のケースでは、私はFxCopの問題の多くを引き起こすSQLにLINQによって生成されたクラスの束を持っており、これらの変更の多くは次のようになりますよう明らかに、私は、FxCopの基準を一致させるために、それらのすべてを変更することはありません私はクラスを再生成した場合には消えています。
私はFxCopのは、生成されたコードの分析を抑制するために、プロジェクトのオプションを持っていることを知っているが、生成されたコードとしてLINQ 2 SQLで作成されたエンティティとコンテキストクラスを認識していないようです。
解決
あなたは[GeneratedCode]
属性を使用して、クラスにタグを付ける場合は、このMSDNの記事で説明したように、あなたはFxCopのと/ ignoregeneratedcodeフラグを使用することができます:
<のhref = "http://blogs.msdn.com/b/codeanalysis/archive/2008/02/28/faq-how-do-i-prevent-fxcop-1-36-from-firing-警告-に対して生成された-code.aspx」のrel = "noreferrer"> FAQ:私は、生成されたコードするに対して警告を発射からFxCopのを防ぐにはどうすればよいです。
あなたは新しいコードファイルを追加し、クラスに属性を追加するためにそこに新しい部分クラスを実装する必要があります:
[GeneratedCode]
public partial class MainDataContext { }
ちょうどあなたがあなたの新しいファイルを作成し、正しい名前空間にすべてのものを追加してください。
他のヒント
[GeneratedCode] attribute
に追加クラスへ。
編集:私は他の回答で説明したように、同じ名前の部分クラスに意味
<のhref = "http://blogs.msdn.com/fxcop/archive/2007/04/27/correct-usage-of-the-compilergeneratedattribute-and-the- HERESに、生成されたコードの属性を使用しますgeneratedcodeattribute.aspx」のrel = "nofollowをnoreferrer">対象のコード分析チームのブログ記事でます。
このトリックを行う必要があり、名前空間の上部にある
[GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "9.0.0.0")]
<Assembly: SuppressMessage("Microsoft.Design", _
"CA1020:AvoidNamespacesWithFewTypes", _
Scope:="namespace", _
Target:="Missico.IO")>
プロジェクトのルートにGlobalSuppressions.vb
に文を入れます。
私が持っているすべては、VBの例である。