1
Iている次のコード:Visual Studioのコード分析のDisposeの実装の警告
/// <summary>
/// Dispose.
/// </summary>
public override sealed void Dispose()
{
Dispose(true);
GC.SuppressFinalize(this);
}
/// <summary>
/// Dispose.
/// </summary>
/// <param name="disposing">
/// Disposing parameter.
/// </param>
protected override void Dispose(bool disposing)
{
if (disposing)
{
}
Clear();
base.Dispose(disposing);
}
そして、次の警告があります。
警告435 CA2215:Microsoft.Usage:その方法「を確認しDSDump.Dispose () 'はすべての可能なコントロールフローパスでbase.DSDump.Dispose()を呼び出します。
警告436 CA1063:Microsoft.Design: 'DSDump.Dispose()'を削除し、Dispose(bool disposing)をオーバーライドし、disposingがtrueのコードパスにdisposeロジックを配置します。
私はすべてのアイデアはありません...私の側からはすべて見えます。
+1、マイクロソフトでは推奨されるサンプルコードを提供しています。http://msdn.microsoft.com/en-us/library/b1yfkh5e.aspx –
@LexLi MSのガイドラインとサンプルコードには、どのように基本クラスを実装するが、派生クラスは実装しない。それについては、http://reedcopsey.com/2009/03/30/idisposable-part-2-subclass-from-an-idisposable-class/を参照してください。 –