Загрузка DataTable при помощи DataReader

если то с чем вы

Позднее я собираюсь показать, как использовать считыватель данных для загрузки специальной объектной модели, но пока мы занимаемся загрузкой наборов данных, я подумал, что стоит выделить одну новую возможность в. NET 2.0. Если то, с чем вы работаете в каждый момент времени — это единственная таблица, то создание целого набора данных с индексами таблиц для того только, чтобы добраться до ваших данных, может означать массу излишних дополнительных расходов. В. NET 2.0 вы можете создать, заполнить и использовать самостоятельную таблицу DataTable, Без необходимости иметь дело со сложностями набора данных. Вы можете также, используя считыватель данных, быстрым и эффективным образом заполнить ее, не проходя для этого через адаптер данных или адаптер таблицы. Следующий код показывает вышесказанное в действии. В этом единственном блоке кода представлено несколько новых моментов, поэтому давайте разберем их по порядку. Первое, что делает этот код — создает пустую таблицу данных и называет ее Customers. Всякий раз, когда вам требуется исполнить запрос, вам нужен объект соединения, и оно создается здесь оператором Using. Если вы исполняете запрос сами, вам нужно будет сначала явным образом открыть соединение. Всякий раз, когда вы открываете соединение, вы должны обеспечить его закрытие, и вы должны это сделать даже в том случае, если в коде, предшествующем вызову Close, Будет выброшено исключение. Одним из способов сделать это является размещение кода, открывающего соединение, в блоке Try, С вызовом Close В блоке Finally. Другим способом является использование оператора C# Using, Как сделано в этом коде.

Здесь объект соединения создается в блоке Using, Что приводит к вызову для соединения метода Dispose При выходе из области действия этого блока. Метод Dispose Объекта соединения вызывает Close, А оператор Using Всегда создает за вас блок Try-Finally С вызовом Dispose В блоке Finally. Таким образом, блок Using Предлагает вам простой, легко читаемый и безопасный способ использования объектов соединения, гарантирующий, что они будут закрыты при выходе из области действия.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *