どのルールいFxCop/Gendarmeなかった
-
20-09-2019 - |
質問
う定義可能な静的コードを確認原則希望を見に加えFxCopおよび/またはGendarme?
なぜないのルールを追加。gことがあります。
どうすればソールするとデータエスクローエージェント
解決
個人的に、私はIDisposable
文でusing
実装を使用していない見ることを好むだろう。
あなたは、このようなコードを持っていたので、もします:
var fs = new FileStream(...);
// Other code.
fs.Dispose();
これはusing
文でそれを使用することを教えてくれます。
の利点は、それはケースにあなたを、あなたがタイムリーに配置されていない配置されるべき場所のオブジェクトを認識していない可能性があります警告することになります。
しかし、それは非常に迅速に痛みになるために、このようなルールのために使用した声明の中でIDisposable
実装を宣言しないための有効な状況だ十分な時間があります。ほとんどの場合、この場合は、メソッドのパラメータとしてIDisposable
実装を取っている。
私は何をすべきか、のないのは意味実装の詳細はDispose
、(例えばMemoryStream
またはDataContext
)を呼び出すための必要性を削除するクラスの使い方です。これらはIDisposable
を実装し、常に露出契約に対してコーディングするのが無難であるとにかかわらず、の実装の詳細の、それらに呼びかけDispose
している必要があります。
他のヒント
思を定義し、実施する自分のルール。またこの回FxCopが、このAPIは非常に明確なりませんでしたく書類です。使用したFxCop1.36かいものに変更...
というのも見FxCopを有しやすく、使いやすいインタ---うき)
に則って実施した:
- DocumentInternalMethods
- DocumentInternalTypes
- ...
基本的にはたいと思った実施のxmlコメントは非公開。
私はインターフェイスの可能性を認識するために十分にスマートであることを本当にバイナリ解析たいと思います。
インターフェイスに推定することができコモンズが存在する場合には、定義されたタイプとそのメンバーに近づいてから決めることができれば。
時には明示的インターフェイスを使用しないようにwhishedされているので明らかに、これは、警告を超えるべきではない。
この程度のthinkinしたら、私はあまりにもアクセス修飾子の格下げをチェックするために十分にスマートであることをバイナリ解析を見たいと思います。
これは、クラス、プロパティやメソッドがより制限されるかどうかを決定するのは難しいのではありません。