Свойство | Описание |
---|---|
CaseSensitive | Индикатор необходимости учета регистра символов при сравнении строк в пределах таблицы. Значением по умолчанию является false (ложь) |
ChildRelations | Возвращает коллекцию дочерних отношений для данного объекта DataTable (если таковые имеются) |
Constraints | Возвращает коллекцию ограничений, поддерживаемых таблицей |
DataSet | Возвращает объект DataSet, содержащий данную таблицу (если таковой имеется) |
DefaultView | Возвращает пользовательское представление таблицы, которое может включать фильтр или позицию курсора |
MinimumCapacity | Читает или устанавливает значение для начального числа строк данной таблицы (это значение по умолчанию равно 25) |
ParentRelations | Возвращает коллекцию родительских отношений для данного объекта DataTable |
PrimaryKey | Читает или устанавливает массив столбцов, функционирующих в качестве первичных ключей для таблицы данных |
RemotingFormat | Позволяет определить, как объект DataSet должен выполнять сериализацию соответствующего содержимого (в двоичном или XML-формате) для слоя удаленного взаимодействия .NET. Это свойство появилось в .NET 2.0 |
TableName | Читает или устанавливает имя таблицы. Это же свойство может быть указано в качестве параметра конструктора |
В нашем примере мы установим свойство PrimaryKey типа DataTable равным объекту carIDColumn типа DataColumn.
static void Main(string[] args) {
…
// Установка первичного ключа для таблицы.
inventoryTable.PrimaryKey = new DataColumn[] { inventoryTable.Columns[0] };
}
На этом создание примера для DataTable завершается. Заключительным шагом будет вставка DataTable в DataSet-объект carsInventoryDS. Затем объект DataSet нужно оформлять вспомогательному методу PrintDataSet (который ещё предстоит написать).
static void Main(string[] args) {
…
// Наконец, добавление таблицы в DataSet.
carsInventoryDS.Tables.Add(inventoryTable);
// Теперь вывод данных DataSet.
PrintDataSet(carsInventoryDS);
}
Метод PrintDataSet просто выполняет цикл по всем DataTable из DataSet. печатая имена столбцов и значения строк с помощью индексатора типа.
static void PrintDataSet(DataSet ds) {
Console.WriteLine("Таблицы в DataSet '{0}'.\n", ds.DataSetName);
foreach (DataTable dt in ds.Tables) {
Console.WriteLine("Таблица {0}.\n", dt.TableName);
// Вывод имен столбцов.
for (int curCol = 0; curCol ‹ dt.Coumns.Count; curCol++) {
Console.Write(dt.Columns[curCol].ColumnName.Trim + ''\t");
}
Console.WriteLine("\n--------------------------------");
// Вывод DataTable.
for (int curRow = 0; curRow ‹ dt.Rows.Count; curRow++) {
for (int curCol = 0; curCol ‹ dt.Columns.Count; curCol++) {
Console.Write(dt.Rows[curRow][curCol.ToString + "\t");
}
Console.WriteLine;
}
}
}
Вывод программы показан на рис. 22.12.
Рис. 22.12. Содержимое объекта DataSet примера
Работа с DataTableReader в .NET 2.0