私はANTLRから生成されたC#コードを持っています。 stylecop/fxcop/visualスタジオコード解析で、このファイルを無視して確認する方法を教えてください。 FxCopのためには、ファイルを生成しましたか?
答えて
、決定的な方法は[GeneratedCode]
属性を使用してコードを飾ると、生成されたコードをチェックするオプションを無効にすることです。詳細は、VSおよび/またはFxCopのバージョンによって異なります。 correct usage of the attributesのこのブログ記事を参照してください。
StyleCopはその属性を無視していますが、他のいくつかのオプションがあります。
- 名、ファイル「Whatever.Designer.csを」とあなたStyleCop.settingsファイルでそのオプションを設定します。
- それで
<auto-generated />
どこかを含むファイルのXMLヘッダーをインクルードします。
さらに、両方のツールの最新のバージョンでは、その名前に "generated code"というフレーズが含まれる領域内にあるコードは無視されるようです。たとえば、あなたのWindowsフォームで使用すると、この表示されます* .Designer.csファイル:両方と
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent ()
{
// stuff here
}
#endregion
コード分析とStyleCopは、その領域内のコードを無視するが、それでも、このファイルの残りの部分に対して実行されます。 (デザイナーファイルを無視する場合は、StyleCopは.Designer.csで終わるため、ファイル全体が無視されます。)
この2つのツールでは、 (。適切に自分自身を除外することを気にしない、自動生成されたコードの量と同じくらいイライラ - 、ここであなたを見ているEF)コードを無視する問題を、コード分析は、メタデータを属性を持つあなたのコンパイルされたコードを(チェックするということですコメントは表示されません)、StyleCopはソースコードをチェックします(メタデータ属性の範囲は追跡するのが難しいですが、まだ可能です)。私はオプションの混合物を使用する傾向がある私のテンプレートで
:私はそれで<auto-generated>
タグとStyleCop対応のヘッダーを含めるし、その後[GeneratedCode]
で、各コード要素を飾る、すべてをキャッチしているようです。他の方法は@headersを使用している可能性があり
(おそらく私の自動生成されたコードも最初の場所:)で規則に違反しないように一生懸命しようとすることは言うまでもないです)。
@lexer::header {
#pragma warning disable 1591
}
@parser::header {
#pragma warning disable 1591
}
さて、私は「部分的」でありANTLRは、ファイルを生成していることに気づいたので、私はただ、第二のファイルを作成した「部分的に」は任意のフィールドやメソッドを持つクラスなしとも同じクラスを追加しましたが、追加しましたクラスに属性を次
[GeneratedCodeAttribute( "ANTLR"、 "3.0.0.0")]
は、私はTFSのソース管理に、このファイルをチェックします。このように、クラスは生成されたコード属性セットを持ち、CodeAnalysis/FxCopはクラス全体を無視します。しかし、自動生成されたコードをチェックしないようにCodeAnalysisを設定する必要があります(適切なチェックボックスはチェックされています)。
- 1. php include:ms単語はHTMLファイルとゴミを生成しました。
- 2. PHP Asciiファイルを生成しますか?
- 3. はexeファイルを生成します
- 4. XMLファイルの生成中にAndroidエラーが発生しました
- 5. HibernateはPOJOを生成しました
- 6. ANTLRでファイルを生成する際にエラーが発生しました
- 7. WebServiceRef Reference.csファイルは何を生成しますか?
- 8. GoogleプロトコルでのC#ファイルの生成に失敗しました
- 9. カスタムツールエラー:ファイルの生成に失敗しました
- 10. Asseticは、削除されたいくつかのCSSファイルを生成します。
- 11. ./configureはaclocal-1.11のMakefile要求を生成しましたか?
- 12. XCodeは自動的にコメントを生成しましたか?
- 13. ウインドリバーのワークベンチは、ファイルの問題を自動生成しました
- 14. XNATouchおよびbtouchで生成されたMtouch生成の問題は、admobバインディングを生成しました。
- 15. Mavenアセンブリプラグインは、バットまたはshファイルでzipを生成します
- 16. Windowsがブレークポイントを生成しました
- 17. ハンドルビルド時に生成された.classファイルをハンドルします。
- 18. HttpWebRequestを生成していますか? ArgumentExceptionエラーが発生しました
- 19. VS2015のエラーは、コード生成中に発生しましたが、
- 20. 既存のJavaオブジェクトまたはxsdから.protoファイルを生成
- 21. テキストファイルまたはXMLファイルからコードを自動的に生成してコンパイルしますか?
- 22. プライマリキーまたは(id)In jspを生成しますか?
- 23. msvcp71.dllをダウンロードまたは生成しますか?
- 24. WebブラウザまたはJavaでグラフを生成しますか?
- 25. ソースと実行ファイルからMakefileを生成しますか?
- 26. VB6アプリケーションから.REGファイルを生成しますか?
- 27. SilverlightはOrderNoを生成しますか?
- 28. XMLファイルを作成または生成する方法
- 29. Asp.NET Chartはファイル名なしで画像ファイルを生成します
- 30. 生成されたZipファイルiPhoneからサーバーからダウンロードしますか?