Роль DataSet

Роль DataSet

Упрощенно говоря, DataSet является представлением внешних данных в памяти. Более точно, DataSet представляет собой тип класса, поддерживающий три внутренние строго типизованные коллекции (рис. 22.11).

Рис. 22.11. "Анатомия" DataSet

Свойство Tables объекта DataSet позволяет получить доступ к коллекции DataTableCollection, содержащей отдельные объекты DataTable. Другой важной коллекцией DataSet является DataRelationCollection. Ввиду того, что объект DataSet является "отсоединенным" образом структуры базы данных, можно программно представлять родительски-наследственные связи между таблицами. Например, с помощью типа DataRelation можно создать отношение между двумя таблицами, моделирующее ограничение внешнего ключа, Соответствующий объект можно затем добавить в DataRelationCollection с помощью свойства Relations. После этого вы сможете осуществлять переходы между соединенными таблицами при поиске данных. Как это реализуется на практике, будет доказано немного позже.

Свойство ExtendedProperties обеспечивает доступ к объекту Property-Collection, который позволяет ассоциировать с DataSet любую дополнительную информацию, используя пары имен и значений. Эта информация может быть практически любой, и даже вообще не иметь никакого отношений к данным. Например, можно связать с DataSet название вашей компании, которое в этом случае может выступать в роли включенных в память метаданных. Другими примерами таких расширенных свойств могут быть штамп даты/времени, шифрованный пароль, который необходимо будет указать для доступа к содержимому DataSet, число, задающее частоту обновления данных, и т.д.

Замечание. Класс DataTable также поддерживает расширение свойств с помощью свойства ExtendedProperties.

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг

Роль директив CIL

Из книги Язык программирования С# 2005 и платформа .NET 2.0. [3-е издание] автора Троелсен Эндрю

Роль директив CIL Прежде всего, есть множество известных лексем CIL, которые используются для описания полной структуры компоновочного блока .NET. Эти лексемы называются директивами. Директивы CIL используются дли информирования компилятора CIL о том, как определять


Роль атрибутов CIL

Из книги Обработка баз данных на Visual Basic®.NET автора Мак-Манус Джеффри П

Роль атрибутов CIL Во многих случаях директивы CIL сами по себе оказываются недостаточно информативными, чтобы дать исчерпывающее определение соответствующего типа .NET или его члена. Поэтому многие директивы CIL сопровождаются различными атрибутами CIL, сообщающими о том,


Члены DataSet

Из книги Введение в QNX/Neutrino 2. Руководство по программированию приложений реального времени в QNX Realtime Platform автора Кёртен Роб

Члены DataSet Перед погружением в многочисленные детали программирования давайте рассмотрим набор базовых членов DataSet. Кроме свойств Tables, Relations и ExtendedProperties, в табл. 22.9 описаны некоторые другие интересные свойства.Таблица 22.9. Свойства DataSet Свойство Описание CaseSensitive


Сохранение DataSet (и DataTable) в формате XML

Из книги автора

Сохранение DataSet (и DataTable) в формате XML В завершение рассмотрения текущего примера напомним, что как DataSet, так и DataTable предлагают поддержку методов WriteXml() и ReadXml(). Метод WriteXml() позволяет сохранить содержимое объекта в локальном файле (или вообще в любом типе System.IO.Stream) в виде


Заполнение DataSet с помощью адаптера данных

Из книги автора

Заполнение DataSet с помощью адаптера данных Создайте новое консольное приложение с именем FillDataSetWithSqlDataAdapter, указав в нем использование пространств имен System.Data и System. Data.SqlClient. Обновите метод Main() так, как предлагается нише (для простоты здесь не показан блок try/catch).static void


Объекты DataSet с множеством таблиц и объекты DataRelation

Из книги автора

Объекты DataSet с множеством таблиц и объекты DataRelation До этого момента во всех примерах данной главы объекты DataSet содержали по одному объекту DataTable. Однако вся мощь несвязного уровня ADO.NET проявляется тогда, когда DataSet содержит множество объектов DataTable. В этом случае вы можете


Строго типизованные объекты DataSet

Из книги автора

Строго типизованные объекты DataSet Строго типизованные объекты DataSet (как и подразумевает их название) позволяют взаимодействовать с внутренними таблицами объектов DataSet, используя для этого специальные свойства, методы и события базы данных, а не обобщенное свойство Tables.


Роль Web-сервисов XML

Из книги автора

Роль Web-сервисов XML С точки зрения самого высокого уровня вы можете определить Web-сервис XML, как единицу программного кода, доступную для вызова с помощью HTTP-запросов. Однако, в отличие от традиционного Web-приложения, Web-сервисы XML можно использовать не только для того, чтобы


Доступ к типам DataSet ADO.NET

Из книги автора

Доступ к типам DataSet ADO.NET Чтобы завершить создание нашего Web-сервиса XML, вот вам еще един Web-метод, который возвращает DataSet с данными таблицы Inventory базы данных Cars, созданной при изучении ADO.NET в главе 22.// Получение списка всех машин из таблицы Inventory.[WebMethod(Description = "Возвращает


ГЛАВА 5 ADO.NET: объект DataSet

Из книги автора

ГЛАВА 5 ADO.NET: объект DataSet Объект DataSet является центральным и наиболее революционным элементом модели доступа к данным ADO.NET. По сути, это кэш-область в оперативной памяти для данных из одного или нескольких источников. Его можно представить как полноценную базу данных,


Компоненты объекта DataSet

Из книги автора

Компоненты объекта DataSet Объект DataSet является ключевым объектом ADO.NET и служит универсальным контейнером данных, независимо от используемого источника данных. Объект DataSet и связанные с ним подчиненные объекты предлагают реляционное представление данных, хотя он также


Ввод данных в объект DataSet

Из книги автора

Ввод данных в объект DataSet Для ввода данных в таблицы DataTable объекта DataSet предусмотрены перечисленные ниже способы.1. Программирование определений метаданных и прямая вставка данных.2. Использование объекта DataAdapter для создания запроса по отношению к источнику данных.3.


Обновление данных в объекте DataSet

Из книги автора

Обновление данных в объекте DataSet Для обновления отдельной записи таблицы необходимо просто организовать доступ к нужной записи и присвоить новое значение одному из полей. Например, для изменения номера отдела, к которому относится Sam Johnson, можно использовать следующую


Применение объекта DataSet

Из книги автора

Применение объекта DataSet Панель элементов управления Data среды Visual Studio .NET содержит компонент DataSet, который позволяет задавать значения свойств для набора данных с помощью окна свойств Properties вместо создания специального кода. Этот способ работы с компонентом DataSet


Роль ядра

Из книги автора

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