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


Создание и настройка наборов данных в .NET Framework с помощью Visual Studio

Заметка

Наборы данных и связанные классы являются устаревшими технологиями .NET Framework с начала 2000-х годов, которые позволяют приложениям работать с данными в памяти, пока приложения отключены от базы данных. Технологии особенно полезны для приложений, которые позволяют пользователям изменять данные и сохранять изменения обратно в базу данных. Хотя наборы данных зарекомендовали себя как очень успешная технология, мы рекомендуем, чтобы новые приложения .NET использовали Entity Framework Core. Entity Framework предоставляет более естественный способ работы с табличными данными в виде объектных моделей, и он имеет более простой интерфейс программирования.

Набор данных — это набор объектов, которые хранят данные из базы данных в памяти и поддерживают отслеживание изменений для включения операций создания, чтения, обновления и удаления данных без необходимости всегда подключаться к базе данных. Наборы данных предназначены для простых форм над бизнес-приложениями на основе данных. Для новых приложений рекомендуется использовать Entity Framework для хранения и моделирования данных в памяти. Для работы с наборами данных необходимо иметь базовые знания о концепциях базы данных.

Вы можете создать типизированный класс DataSet в Visual Studio во время разработки с помощью мастера настройки источника данных . Для получения информации по программному созданию наборов данных, см. раздел Создание набора данных (ADO.NET).

Необходимые условия

  • проект .NET Framework (не .NET Core или .NET 5 или более поздней версии)

  • Visual Studio с установленными рабочими нагрузками разработки настольных приложений .NET и хранилища и обработки данных. Чтобы установить их, откройте Установщик Visual Studio и выберите Изменить (или Дополнительно>Изменить) рядом с версией Visual Studio, которую вы хотите изменить.

  • SQL Server Express LocalDB. Если у вас нет SQL Server Express LocalDB, его можно установить на странице загрузки SQL Server.

Создание нового набора данных с помощью мастера настройки источника данных

  1. Откройте проект в Visual Studio, а затем выберите Project>добавить новый источник данных, чтобы запустить мастер настройки источника данных.

  2. Выберите тип источника данных, к которому будет подключаться.

    снимок экрана: мастер настройки источника данных.

  3. Выберите DataSet из списка параметров.

    снимок экрана: выбор набора данных в качестве модели базы данных.

  4. Выберите базу данных или базы данных, которые будут источником данных для набора данных.

    снимок экрана, показывающий, как выбрать подключение.

  5. Выберите, следует ли сохранять строку подключения в app.config.

    снимок экрана с параметром сохранения строки подключения в файл конфигурации приложения.

  6. Выберите таблицы (или отдельные столбцы), хранимые процедуры, функции и представления из базы данных, которую вы хотите представить в наборе данных.

    снимок экрана, показывающий, как выбрать объекты базы данных.

  7. Нажмите кнопку Готово.

    Набор данных отображается в Обозревателе решений.

    снимок экрана с набором данных в обозревателе решений.

  8. Щелкните узел данных в обозревателе решений , чтобы открыть набор данных в конструкторе наборов данных. Каждая таблица в наборе данных содержит связанный объект TableAdapter, который представлен в нижней части. Адаптер таблицы используется для заполнения набора данных и при необходимости для отправки команд в базу данных.

    снимок экрана: таблицы данных в конструкторе наборов данных.

  9. Линии связи, которые соединяют таблицы, представляют связи таблиц, как определено в базе данных. По умолчанию ограничения внешнего ключа в базе данных представляются только в виде отношения, при этом правила обновления и удаления не заданы. Как правило, это то, что вы хотите. Однако вы можете щелкнуть линии, чтобы открыть диалоговое окно соотношения, где можно изменить поведение иерархических обновлений. Дополнительные сведения см. в разделе Связи в наборах данных и Иерархическое обновление.

    диалоговое окно отношения набора данных

  10. Щелкните таблицу, адаптер таблицы или имя столбца в таблице, чтобы просмотреть его свойства в окне Свойства. Здесь можно изменить некоторые значения. Просто помните, что вы изменяете набор данных, а не исходную базу данных.

    снимок экрана со свойствами столбца DataSet.

  11. Вы можете добавить новые таблицы или адаптеры таблиц в набор данных или добавить новые запросы для существующих адаптеров таблиц или указать новые отношения между таблицами, перетащив эти элементы из вкладки панели элементов. Эта вкладка отображается, когда конструктор наборов данных находится в фокусе.

    снимок экрана, показывающий инструментарий наборов данных.

Затем может потребоваться указать, как заполнить набор данных данными. Для этого вы используете мастер конфигурации TableAdapter. Дополнительные сведения см. в разделе «Заполнение наборов данных с помощью TableAdapters».

Добавление таблицы базы данных или другого объекта в существующий набор данных

В этой процедуре показано, как добавить таблицу из той же базы данных, которую вы использовали для создания набора данных.

  1. Щелкните узел DataSet в обозревателе решений, чтобы активировать конструктор наборов данных .

  2. Перейдите на вкладку Источники данных в левом поле Visual Studio или введите источники данных в поле поиска.

  3. Щелкните правой кнопкой мыши на узле набора данных и выберите Настроить источник данных с помощью мастера.

    снимок экрана с контекстным меню источника данных.

  4. Используйте мастер, чтобы указать дополнительные таблицы, хранимые процедуры или другие объекты базы данных для добавления в набор данных.

Добавление автономной таблицы данных в набор данных

  1. Откройте набор данных в конструкторе наборов данных .

  2. Перетащите класс DataTable из вкладки DataSet панели инструментов на Дизайнер наборов данных.

  3. Добавьте столбцы для определения таблицы данных. Щелкните таблицу правой кнопкой мыши и выберите Добавить столбец>. При необходимости используйте окно свойств , чтобы задать тип данных столбца и ключ.

Автономные таблицы должны реализовать логику Fill, чтобы можно было заполнить их данными. Для информации о заполнении таблиц данных см. в заполнение набора данных с использованиемDataAdapter.