Имя Пароль
Зарегистрироваться


* При перепечатке материалов ссылка на www.SeoLiga.ru обязательна! RSS



Применение объектов DataSet и обновление данных
8 февраля 2009

Объект DataSet — это центральный компонент архитектуры доступа, основанной
на использовании отсоединенных данных. В архитектуре доступа к данным ADO.NET
объекты DataSet представляют данные, загруженные в память. Чтобы заполнить
DataSet, можно воспользоваться объектом DataAdapter либо создать новый объект
DataSet, прочитав данные из файла в формате ХМ L или из «плоского» файла. Объек-
ты DataSet также создают программно. Данные этого объекта разрешается связы-
вать с элементами пользовательского интерфейса, а также модифицировать и при-
менять для обновления БД, выполняемого с помощью объекта DataAdapter. На этом
занятии вы научитесь создавать объекты DataSet программно, добавлять к ним
объекты Data Relation и обновлять БД содержимым объекта DataSet.
Изучив материал этого занятия, вы сможете:
^ создать объект DaiaSet программно или на основе данных, прочитанных
из плоского файла;
^ добавлять к DataSet объекты Constraints и Data Relation',
^ обновлять БД при помощи объекта DataAdapter,
^ применять транзакции БД;
^ разработать схему обработки ошибок, возникающих при обновлении БД.
Продолжительность занятия - около 60 минут.
Объект DataSet представляет данные, загруженные в память. В сущности, это
полная или частичная копия БД, расположенная на клиентском компьютере. По-
лучение доступа к данным объекта DataSet не требует взаимодействия с БД, а их
модификация не отражается на содержимом БД вплоть до ее обновления.
На предыдущем занятии вы научились заполнять DataSet данными из объекта
DataAdapter. Это основной способ создания объектов DataSet, но иногда требуется
доступ к данным, хранящимся иным способом, например в виде массива или текс-
тового файла с разделителями-запятыми. На этом занятии вы узнаете, как это дела-
ется.
Создание и заполнение DataSet
без использования DataAdapter
Объекты DataSet создают программно, как и любые другие объекты, например:
Visual Basic .NET
Din rnyDataSet As New DataSet()
Visual C#
DataSet myDataSet =• new DataSetO;
В данном примере создается пустой объект DataSet. Чтобы заполнить его, необ-
ходимо создать новый объект DataTable и добавить его к набору Tables:
Visual Basic .NET
Dim туТаЫе As New DataTableO
myDataSet. Tables. Acfd(myTable)
Visual C#
DataTable rnyTable = new DataTableO;
myDataSet. Tables. Acid (myTable);
Теперь в наборе Tables нового объекта DataSet содержится единственная пустая
таблица. Можно программно добавить к набору Tables объекта DataSet дополни-
тельные объекты DataTable,
Чтобы заполнить DataSet, необходимо определить структуру его таблиц. Для это-
го следует программными средствами создать столбцы и добавить их к набору
Columns объекта DataTable. Имя столбца можно указать при создании нового объек-
та DataColumn, например, так:
Visual Basic .NET
Dim AccountsColumn As New DataColumn("Accounts")
myDataSet.Tables(0).Columns.Add(AccountsColumn)
Visual C#
DataColurnn AccountsColumn = new DataColumn("Accounts");
myDataSet.Tables[Q].Columns.Add(AccountsColumn);
Для каждого поля данных, которое предполагается хранить в объекте DataTable,
требуется отдельный столбец. Создав все необходимые столбцы, можно добавить к
Data Table объекты DataRow. DataRow — это набор, представляющий строку табли-
цы БД. Создавать экземпляры DataRow напрямую нельзя, вместо этого следует выз-
вать метод NewRow объекта DataTable, к которому добавляется объект DataRow.
Visual Basic .NET
Dim myRow As DataRow
myRow = myDataSet.Tables(O).NewRow()
Visual C#
DataRow myRow;
myRow = myDataSet.Tables[0].NewRowf);
Созданный объект DataRow можно заполнить данными из любого источника, в
том числе элементами набора или массива, а также введенными пользователем зна-
чениями. Следующий пример демонстрирует заполнение объекта DataRow членами
набора строк:
Visual Basic .NET
1 Этот пример предполагает наличие объекта ArrayList с именем StringCollectJon
Dim Counter As Integer
For Counter = 0 to StringCollection.Count -1
iriyRow.Item(Counter) - StringCollection(Counter)
Next
Visual C#
// Этот пример предполагает наличие объекта ArrayList с именем StringCollection
for (int i = 0; i < StringCollection.Count; i ++)
\
myRow.Item[Counter] = StringCollection[i];
;
Заполненный объект DataRow можно добавить к набору Rows объекта DataTable:
Visual Basic .NET
myDataSet.Tables(O).Rows.Add(myRow)
Visual C#
myDataSet.Tables[0].Rows.Add(fnyfiow);
Следующие действия повторяют, пока не создадут и не заполнят все члены
объекта DataSet.
> Как программно создать объект DataSet
1. Объявите и создайте экземпляр класса DataSet.
2. Объявите, создайте и добавьте к набору Tables объекта DataSet нужное число
объектов DataTable.
3. Для каждого объекта DataTable объявите и создайте экземпляры объектов Data-
Column по числу столбцов таблицы; добавьте эти объекты к набору Columns
объекта DataTable.
4. Создайте новую строку при помощи метода DataTable. New Row.
5. Заполните новую строку данными.
6. Добавьте новую строку к набору Rows объекта DataTable.
7. Повторяйте пункты 4—6, пока не добавите все данные.

Теги: .NET

Статьи по теме:

Вызов методов
Объекты Color, Brush и Pen
Свойства-наборы
Управление лицензированием элементов управления
Разделяемые сборки
Организация доступа к данным и работа с объектом DataReader
Переменные методов
Отладка элементов управления
Оптимизация средствами компилятора
Вывод типов
Применение типов .NET Framework в приложениях
CBitmapEx – C++-класс для работы с BMP
Рисование простых фигур
Преобразование кодировки символов
Работа с классом Help
| .NET | Pavel |
 


Пн Вт Ср Чт Пт Сб Вс
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31


     



Rambler's Top100

Данный сайт или домен продается ICQ: 403-353-727

© 2009 Seoliga.ru | .NET | Применение объектов DataSet и обновление данных. Регион сайта: Москва и Санкт-Петербург