¿Todavía se llama a Dispose cuando se lanza una excepción dentro de una instrucción using?

n el ejemplo a continuación, la conexión se cerrará y eliminará cuando se produzca una excepción si está dentro de unausing declaración?

using (var conn = new SqlConnection("..."))
{
    conn.Open();
    // stuff happens here and exception is thrown...
}

Sé que este código a continuación se asegurará de que lo haga, pero tengo curiosidad por saber cómo usar la declaración.

var conn;
try
{
    conn = new SqlConnection("...");
    conn.Open();
    // stuff happens here and exception is thrown...
}
// catch it or let it bubble up
finally
{
    conn.Dispose();
}

RelacionadoCuál es la forma correcta de garantizar que se cierre una conexión SQL cuando se produce una excepción?

Respuestas a la pregunta(2)

Su respuesta a la pregunta