Toto je 100% správný způsob. Pokud třída využívá IDisposable měl by být zabalen do using příkazem zajistit, že Dispose() se nazývá metoda. Komunikace s externí technologií – v takovém případě nespravovanou – jako je SQL Server, by se navíc neměla brát na lehkou váhu. SqlCommand objekt implementuje IDisposable z velmi dobrého důvodu. Níže uvedený kód je Dispose() metoda pro SqlCommand objekt:
protected override void Dispose(bool disposing)
{
if (disposing)
{
this._cachedMetaData = null;
}
base.Dispose(disposing);
}
a jak můžete vidět, uvolňuje odkaz na _cachedMetaData objekt, aby se také mohl vyčistit.