新しいプロジェクトの VS2005 コード分析規則を遵守しようとしています。私はこの方法を持っています:
public void Dispose()
{
Console.WriteLine("Dispose() called");
Dispose( true );
GC.SuppressFinalize(this);
}
(コンソール呼び出しは、ある時点で log4net 呼び出しになり、いくつかの型の破棄をログに記録することに常に関心があります)。
コンソール デバッグ行が存在すると、次のエラーが発生します。
エラー 1 CA1063: Microsoft.Design: Dispose(true) を呼び出すように PerfectDisposableClass.Dispose():Void を変更し、現在のオブジェクト インスタンス (VB では 'this' または 'Me') で GC.SuppressFinalize を呼び出してから、戻ります. F:\Visual Studio 2005\Projects\DisposeAndFinalize\DisposeAndFinalize\PerfectDisposableClass.cs 26 DisposeAndFinalize
プラグマ ディレクティブに頼らずに、これを回避する方法はありますか? おそらく私自身のルールを書いていますか?また、リフレクターで見ることができるアセンブリの既存のルールはどこにありますか?