C'est 100% la bonne façon. Si une classe utilise IDisposable
il doit être enveloppé dans un using
pour s'assurer que le Dispose()
méthode est appelée. De plus, la communication avec une technologie extérieure - non gérée en plus - comme SQL Server ne doit pas être prise à la légère. La SqlCommand
objet implémente IDisposable
pour une très bonne raison. Le code ci-dessous est le Dispose()
méthode pour SqlCommand
objet :
protected override void Dispose(bool disposing)
{
if (disposing)
{
this._cachedMetaData = null;
}
base.Dispose(disposing);
}
et comme vous pouvez le voir, il libère une référence au _cachedMetaData
objet afin qu'il puisse également être nettoyé.