Поделиться через


Результирующие наборы и наборы данных (устройства)

Обновлен: Ноябрь 2007

Мастер Visual Studio Мастер конфигурации источников данных может создавать код источника данных в проектах устройств, которые основаны на DataSet или System.Data.SqlServerCe.SqlCeResultSet. Созданный код представляет источник данных в проекте устройства, который может быть привязан к пользовательским интерфейсам управления, а также может обмениваться данными с базой данных SQL Server Compact 3.5. Однако код, основанный на SqlCeResultSet, работает быстрее, использует меньше памяти и более прост, чем код, основанный на DataSet. Это связано с тем, что SqlCeResultSet использует указатель для работы напрямую с базой данных, а DataSet сохраняет копию данных из базы данных в приложении устройства. В этом разделе обсуждаются источники данных, основанные как на SqlCeResultSet, так и на DataSet.

ms180730.alert_note(ru-ru,VS.90).gifПримечание.

По умолчанию Visual Studio создает код, основанный на DataSet, при использовании мастера источников данных для создания нового источника данных. Чтобы создать один из этих классов или оба этих класса, ознакомьтесь с разделом Практическое руководство. Создание кода SqlCeResultSet Code (устройства).

На следующем рисунке показаны различия в архитектуре между SqlCeResultSets и DataSets.

Различие между SqlCeResultSet и DataSet

Результирующие наборы данных

Если мастер создания источника данных создает источника данных, основанный на SqlCeResultSet, вместе с ним создается и класс, которые наследует из SqlCeResultSet. В отличие от источников данных на основе DataSet источники данных, основанные на SqlCeResultSet, не хранят данные. Вместо этого SqlCeResultSet поддерживает указатель на базу данных, а также считывает и обновляет данные в базе данных без использования адаптера таблиц. Возможен прямой доступ к базе данных, потом что SqlCeResultSet является частью поставщика данных .NET Compact Framework для SQL Server Compact 3.5 (SQL Server Mobile в более ранних версиях). Дополнительные сведения см. в разделе Создание типизированных результирующих наборов.

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

Наборы данных

Если мастер конфигурации источника данных создает источник данных, основанный на DataSet, вместе с ним создаются классы для представления данных и класс TableAdapter для обмена данными между приложением и базой данных. Классы, которые представляют данные, наследуют из DataSet, Microsoft.Office.Interop.Excel.DataTable и DataRow. Эти классы сохраняют данные из базы данных. Мастер источника данных создает следующие объекты для отражения реляционной структуры и ограничений базы данных:

  • Класс, производный из DataSet, который содержит Datatable для каждой выбранной таблицы в мастере источника данных. Дополнительные сведения см. в разделе Типизированные объекты DataSet (ADO.NET).

  • Каждый класс, производный из DataTable, также содержит набор объектов DataColumn, который отражает столбцы в базе данных.

  • Класс, производный из DataRow, для каждой таблицы.

  • Реляционные ограничения из базы данных, такие как значение не null, уникальный, первичные ключи, внешние ключи.

  • Класс TableAdapter для обмена данными между базой данных и объектами данных в приложении устройства. Класс TableAdapter содержит методы для чтения данных из базы данных и записи измененных данных обратно в базу данных. Дополнительные сведения см. в разделе Общие сведения об адаптере таблиц.

Классы, которые были описаны ранее в этом разделе, совместимы с архитектурой ADO.NET. Поэтому модель доступа к данным соответствует данным ADO.NET, которые используют .NET Framework на настольном ПК. Дополнительные сведения см. в разделах Доступ к данным (Visual Studio) и Поддержка доступа к данным и XML в .NET Compact Framework.

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

См. также

Задачи

Практическое руководство. Создание кода SqlCeResultSet Code (устройства)

Основные понятия

Рекомендации по стратегиям доступа к данным

Другие ресурсы

Домашняя страница электронной документации по SQL Server Compact

Работа с данными в управляемых проектах устройств