Информационный сайт

 

Реклама
bulletinsite.net -> Книги на сайте -> Программисту -> Троелсен Э. -> "С# и платформа .NET. Библиотека программиста" -> 265

С# и платформа .NET. Библиотека программиста - Троелсен Э.

Троелсен Э. С# и платформа .NET. Библиотека программиста — СПб.: Питер, 2004. — 796 c.
ISBN 5-318-00750-3
Скачать (прямая ссылка): cplatforma2004.pdf
Предыдущая << 1 .. 259 260 261 262 263 264 < 265 > 266 267 268 269 270 271 .. 320 >> Следующая

Например, предположим, что в одной таблице существует внешний ключ, ссылающийся на первичный ключ в другой таблице. Это отношение представлено объектом D at а Re 1 at і о п (и его можно добавить в D at a Set при помощи свойства Dc -teSet.Relations). После этого мы можем использовать это отношение при выполнении запросов к таблицам. Всеми этими операциями нам предстоит еще заняться в этой главе.
Свойство ExtendedProperties обеспечивает доступ к объектам, хранящимся в коллекции PropertyCollection. Основное назначение всей этой конструкции со свойством ExtendedProperties и коллекцией PropertyCollection - обеспечить возможность ассоциировать дополнительную информацию (в виде пар имя — значение) с объектом DataSet. В принципе этой дополнительной информацией может ¦быть все, что угодно. Например, мы можем самостоятельно определить, что у нашего объекта DataSet будет свойство CompanyName, а в качестве значения этого свойства указать имя нашей компании. Выглядеть это будет так:
10:0.-::» объект DataSet и добавляем- для него некоторую дополнительную информацию // Снетадэнные)
656 Глава 13 • Доступ к данным при помощи ADO.NET
Il Выводим инфорниию о только что созданных метаданных
Console. WriteLine(ds.ExtendedProperties["CompanyName"] .ToStringO):
Мы можем использовать расширенные свойства для хранения самой разной информации — например, о внутреннем пароле для доступа к данным, об интервале синхронизации данных и т. п. Кроме того, расширенные свойства (то есть свойство LxtendedProperV es) предусмотрены не только для DataSet, но и DataTabl e.
Члены класса DataSet
Перед тем как начать вникать в особенности применения DataSet в приложении, мы рассмотрим его наиболее важные свойства. Эти свойства обеспечивают доступ к внутренним коллекциям DataSet, позволяют представлять данные из DataSet в формате XML и обеспечивают возможность получения информации об ошибках. Некоторые наиболее важные свойства DataSet представлены в табл. 13.9.
Таблица 13.9. Свойства DataSet
Свойство Описание_
CaseSensitive Определяет, будет ли во время операций по сравнению текстовых строк
в объектах DataTable учитываться регистр букв
DataSetName Позволяет получить или задать имя для данного объекта DataSet. Обычно
значение этого свойства задается как параметр, передаваемый конструктору
DefaultViewManager Позволяет определить представление по умолчанию для отображения данных в DataSet
EnforceConstraints Позволяет отключить (или включить снова) проверку соответствия
ограничениям при выполнении операций обновления данных в DataSet
HasErrors Позволяет получить значение, определяющее наличие ошибок в DataSet
(то есть ошибок в любой строке любой таблицы DataSet)
Relations Позволяет обратиться к коллекции отношений между таблицами DataSet
Tables_Позволяет получить доступ к коллекции таблиц DataSet___
Многие методы DataSet дублируют возможности, которые обеспечиваются свойствами. Помимо взаимодействия с потоками данных в формате XML, методы DataSet позволяют содержимое DataSet, устанавливать начало и конец пакет-
ных изменений данных в DataSet и т. п. Самые важные методы DataSet представлены в табл. 13.10.
Таблица 13.10. Методы DataSet Метод Описание
Позволяет сохранить в DataSet все изменения, произведенные с момента последнего вызова этого метода
С1еаг() Полная очистка DataSet — удаляются все строки из всех таблиц
CIonoQ Клонирует структуру DataSet, включая структуру таблиц, отношения между
таблицами и ограничения
DataSet ds - new DataSetCMyDataSet"): ds.ExtendedPropert1es.Add("CcmpanyNarae". "InterTech. Inc");
Возможности класса 657
Метод
Описание
СоруО
GetChanges()
GetChildRelatronsQ
GetParentRelations()
HasChangesQ
MergeO
ReadXmIO ReadXmlSchema()
RejectChangesQ
WriteXmlO WriteXmISchemaO
Копирует DataSet (структуру вместе с данными)
Возвращает копию DataSet, которая содержит все изменения, внесенные в оригинальный DataSet с момента последнего вызова для него метода
AcceptChanges()
Возвращает коллекцию подчиненных отношений для указанной таблицы
Возвращает коллекцию родительских отношений для указанной таблицы
Этот перегруженный метод позволяет получить информацию об изменениях, внесенных в DataSet (отдельно по вставленным,
удаленным и измененным строкам)
Этот перегруженный метод позволяет производить слияние разных объектов DataSet
Позволяют считывать данные в формате XML в DataSet из потока (файла,
оперативной памяти, сетевого ресурса)
Отменяет все изменения, внесенные в DataSet с момента его создания или последнего вызова AcceptChanges()
Позволяют записать данные в формате XML из DataSet в поток
Создание объекта DataSet
Чтобы проиллюстрироватьприменение DataSet напрактике, мы создадим специальное приложение Windows Forms. В этом приложении будет использоваться
объект DataSet с тремя внутренними таблицами (объектами DataTable) - Inventory, Customers и Orders. В каждой таблице будет свой первичный ключ, при этом система первичных и внешних ключей таблиц позволит нам использовать объекты DataRelation для моделирования отношений между таблицами. Общая структура базы данных, которую мы должны реализовать при помощи объекта DataSet, представлена на рис. 13.19.
Предыдущая << 1 .. 259 260 261 262 263 264 < 265 > 266 267 268 269 270 271 .. 320 >> Следующая
Реклама
Авторские права © 2009 AdsNet. Все права защищены.
Rambler's Top100