C2 Field; // GOOD protected override void Dispose(bool disposing) { base.Dispose(disposing); if (disposing) { Field.Dispose(); } }
C2 Field; // GOOD public override void Dispose(bool disposing) { base.Dispose(disposing); if (disposing) { Field.Dispose(); } }
public void Dispose() { if (c1 != null) { c1.Dispose(); } if (c2 != null) { c2.Dispose(); } }
C2 Field; // GOOD public override void Dispose() { base.Dispose(); Field.Dispose(); }
C2 Field; // BAD public virtual void Dispose() { // Typo: virtual instead of override base.Dispose(); Field.Dispose(); }