ado.net Closing Connection when using "using" statement

ado.net, c#, t-sql

Solution

The `using` will take care of it for you. Under the hood, `SqlConnection.Dispose()` calls the `SqlConnection.Close()` method, and `SqlCommand.Dispose()` calls `SqlCommand.Close()`.

As additional background, a `using` statement is syntactic sugar for a `try ... finally` that disposes the `IDisposable` object in the `finally`.

Problem

I am doing my database access methods to SQL Server like this ``` using (SqlConnection con = new SqlConnection(//connection string) { using (SqlCommand cmd = new SqlCommand(storedProcname, con)) { try{ con.open(); //data reader code } catch { } } } ``` Do I need to be closing or disposing of SqlCommand, or will the using statement take care of that for me? I just don't want connection hanging open Thanks

Original source