Реклама:

7. Добавить созданную таблицу в коллекцию Tables набора.

8. Повторить пп. 2-8 для каждой из создаваемых таблиц набора данных.

9. Если необходимо установить отношение между таблицами набора данных, создать объект типа DataRelation, задать в нем родительскую и дочернюю таблицу, столбцы связи, правила каскадных воздействий и прочие параметры, а затем добавить созданный объект DataRelation в коллекцию Relations набора данных.

10. Повторить действия, изложенные в п. 9, для каждого отношения между таблицами, которое нужно добавить в набор данных.

11. Если необходимо, залить данными таблицы набора.

Ниже рассматриваются примеры создания нетипизированных наборов данных. Первый пример - создание набора с единственной таблицей и заливка ее данными. Второй пример чуть сложнее - он показывает создание набора данных, в состав которого входят две таблицы, связанные между собою отношением подчинения.

Пример. Создание нетипизированного набора данных, в состав которого входит таблица Kaf со столбцами KK Nazv, Fakultet. Первичный ключ таблицы стро-кится по столбцу KK После создания набора таблица Kaf заливается данными из источника данных. Для этого используется существующий в форме адаптер данных с именем aKa f. Затем таблица и набор данных связываются с элементом управления DataGrid. Все. Теперь пользователь может работать с записями таблицы нетипизированного набора.

//---создание столбцов таблицы:

//столбец первичного ключа DataColumn KK = new DataColumn("KK",

System.Type.GetType("System.Int16")); KK.Unique = true; //остальные столбцы

DataColumn Nazv = new DataColumn("Nazv",

System.Type.GetType("System.String"));

DataColumn Fakultet = new DataColumn("Fakultet",

System.Type.GetType("System.String"));

//---создание таблицы набора данных

DataTable Kaf = new DataTable();

//---добавление столбцов в таблицу

Kaf.Columns.Add(KK);

Kaf.Columns.Add(Nazv);

Kaf.Columns.Add(Fakultet);

//---задание первичного ключа таблицы

Kaf.PrimaryKey = new DataColumn[] {KK};

//---создание нетипизированного набора данных

DataSet dataSet1 = new DataSet();

//---добавление таблицы в набор данных

dataSet1.Tables.Add(Kaf);

//---заливка данных в таблицу

aKaf.Fill(dataSetl, "Kaf");

//---связывание dataGrid и таблицы

//---нетипизированного набора

dataGridl.DataSource = dataSetl; dataGridl.DataMember = "Kaf";

Пример. Создадим нетипизированный набор данных и в его составе две таблицы: Kaf (кафедры вуза) и Prep (преподаватели кафедр). Между таблицами установим связь, в рамках которой Kaf выступает как родительская, а Prep - как дочерняя таблица. Пусть в форме имеем адаптеры aKaf и aPrep. Зальем из них данные в таблицы нетипизированного набора данных. Визуализируем содержимое таблиц в двух элементах управления типа DataGrid.

//---создание таблицы Kaf

DataTable Kaf = new DataTable("Kaf");

//---создание столбцов таблицы:

DataColumn KK = new DataColumn("KK", System.Type.GetType("System.Intl6")); DataColumn Nazv = new DataColumn("Nazv",


⇐ Предыдущая страница| |Следующая страница ⇒