Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ADO как базовый объект доступа.doc
Скачиваний:
16
Добавлен:
15.12.2018
Размер:
1.48 Mб
Скачать

1.1.4. Независимость набора данных DataSet от источника данных

Несмотря на то, что DataSet является фрагментом (кэшем) базы данных, он не имеет постоянной фактической связи с первоисточником. Объект DataSet — это контейнер, заполняемый информацией другим объектом — адаптером данных — DataAdapter, который взаимодействует с первоисточником через SQL-запросы или хранимые процедуры. Один объект DataSet может взаимодействовать с несколькими объектами DataAdapter, каждый из которых обеспечивает наполнение данными таблиц контейнера.

Поскольку объект DataSet непосредственно не связан с источником данных, существует хорошая предпосылка для интеграции (объединения) данных, которые поступают из разных источников. Например, часть информации в DataSet может поступить из базы данных центрального офиса компании, часть из базы данных удаленного филиала, или вообще не из базы данных, а из другого источника, например, из электронной таблицы. Как только данные поступят в контейнер DataSet, пользователь может работать с ними как с единым информационным массивом, используя свойства и методы одного объекта, и абсолютно независимо от оригинального источника данных. Схема взаимодействия отсоединенного набора данных DataSet с базой данных приведена на рис. 1.4.

1.1.5. Обмен данными в формате xml

При работе приложений данные должны перемещаться между исходной базой данных и объектом DataSet. В ADO.NET в качестве единого формата для передачи данных используется XML-формат. Аналогично, если данные записать в некий внешний файл, то они будут записаны в XML-формате. Таким образом, файл с данными в формате XML является точно таким же источником, как и любая база данных, и из него можно поместить данные в объект DataSet. Фактически в ADO.NET XML является фундаментальным форматом для данных. В ADO.NET автоматически создают XML-файлы при передаче информации между объектами и компонентами.

Использование обмена данных в едином формате XML имеет следующие преимущества:

  • XML — единый промышленный стандарт, что обеспечивает разработанным вами прикладным компонентам обмениваться данными с любыми другими компонентами в любых других приложениях, поскольку все они понимают и используют формат XML;

  • XML — обычный текстовый формат. При представлении данных в XML не используется двоичное кодирование, а это обеспечивает возможность передачи данных через любой протокол, например, через HTTP.

При разработке информационных систем вам, как программистам, не понадобиться знание структуры формата XML. ADO.NET автоматически выполнит преобразование данных в XML и из XML-формата так, как потребуется в текущий момент. Вы же будете взаимодействовать с данными путем использования обычных приемов программирования (через свойства и методы объектов).

1.1.6. Схемы, определяющие структуру данных

Хотя для манипулирования данными (извлекать, записывать, обновлять информацию в базах данных) вам не нужно знать структуру XML-файлов, все же могут возникнуть ситуации, когда необходимо напрямую работать с XML-форматом. Это обычно ситуации, в которых вы не извлекаете и не модифицируете сами данные, а работаете над проектированием структуры набора данных.

Описание набора данных в Dataset представлено с использованием формата XML. Для определения количества таблиц, перечня колонок каждой таблицы, задания типов данных, ограничений и тому подобного используется XML-схема, которая строится с использованием языка XML Schema Definition Language (XSD). Подобно тому, как данные могут быть загружены в объект DataSet из внешнего XML-источника, так и структура DataSet может быть загружена из XML-схемы.

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

описывающую структуру этого DataSet.

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]