OleDbCommand, два последовательных «использования»

1

При использовании двух последовательных "использования" оба соединения будут удалены при выходе из {}?

using(OleDbConnection con = new OleDbConnection(conString))
using(OleDbCommand command = con.CreateCommand())
{
}
  • 0
    Да, точно ... И OleDbConnection и OleDbCommand будут расположены в строке } .
  • 0
    Какие 2 соединения? Я вижу только 1. Но да, в этом случае оба объекта будут. Добавление фигурных скобок {} вокруг блоков, например if или using всегда делает более понятным, что произойдет, когда это происходит, поэтому это хорошая практика.
Теги:
oledbconnection
oledbcommand

1 ответ

2
Лучший ответ

Там только одно соединение - и команда, использующая одно и то же соединение. Оба будут утилизированы.

Это эффективно:

using(OleDbConnection con = new OleDbConnection(conString))
{
    using(OleDbCommand command = con.CreateCommand())
    {
    } // command will be disposed here
} // con will be disposed here
  • 2
    В основном так же, как if(condition) Do(); и if(condition) { Do(); }

Ещё вопросы

Сообщество Overcoder
Наверх
Меню