Возможный дубликат:
Если я возвращаю значение внутри блока using в методе, удаляет ли using объект перед возвратом?
У меня есть этот код (простой):
bool method1()
{
using (OleDbConnection con = new OleDbConnection(connString))
{
bool b = false;
try
{
con.Open();
b = true;
}
catch (Exception)
{
b = false;
}
finally
{
con.Close();
return b;
}
}
}
Я возвращаюсь перед закрывающей фигурной скобкой выражения "using". Мой объект "con" все равно удаляется? Лучше использовать следующий код ?:
bool method1()
{
bool b = false;
using (OleDbConnection con = new OleDbConnection(connString))
{
try
{
con.Open();
b = true;
}
catch (Exception)
{
b = false;
}
finally
{
con.Close();
}
}
return b;
}