Можно ли заменить выражение using на фигурные скобки?

Я использую оператор using для SqlConnection . Это хорошо для производительности, потому что вынуждает вызывать Dispose (), который просто освобождает соединение с пулом раньше.

Однако я понял, что объект, созданный в использовании, не может быть переопределен. Я не могу сделать так:

   using (SqlConnection connection = new SqlConnection(connectionString))
   {
       connection.Open();
       //...
       connection = new SqlConnection(connectionString2);
       //...
       connection = new SqlConnection(connectionString3);
   }

Мне было интересно, смогу ли я заменить использование и сделать что-то вроде этого:

 {
       SqlConnection connection = new SqlConnection(connectionString);

       connection.Open();
       //...
       connection = new SqlConnection(connectionString2);
       //...
       connection = new SqlConnection(connectionString3);
 }

SqlConnection не будет доступно после последней скобки } . Будет ли Dispose () вызываться немедленно, когда объект выходит из области видимости?

6
задан nan 3 September 2010 в 12:49
поделиться