Сохранение данных с помощью методов DBDirect TableAdapter в приложениях платформа .NET Framework
Примечание.
Наборы данных и связанные классы являются устаревшими технологиями платформа .NET Framework с начала 2000-х годов, которые позволяют приложениям работать с данными в памяти во время отключения приложений от базы данных. Технологии особенно полезны для приложений, которые позволяют пользователям изменять данные и сохранять изменения обратно в базу данных. Хотя наборы данных оказались очень успешными, мы рекомендуем новым приложениям .NET использовать Entity Framework Core. Entity Framework предоставляет более естественный способ работы с табличными данными в виде объектных моделей, и он имеет более простой интерфейс программирования.
В этом руководстве приведены подробные инструкции по выполнению инструкций SQL непосредственно в базе данных с помощью методов DBDirect tableAdapter. Методы DBDirect адаптера таблицы обеспечивают точный контроль над обновлениями базы данных. Их можно использовать для выполнения определенных инструкций SQL и хранимых процедур путем вызова отдельных Insert
Update
методов и Delete
методов, необходимых приложению (в отличие от перегруженного Update
метода, выполняющего UPDATE
INSERT
инструкции и DELETE
инструкции в одном вызове).
В этом руководстве вы узнаете, как:
Создайте и настройте набор данных с помощью мастера настройки источника данных.
Выбор элемента управления, создаваемого на форме при перетаскивании элементов из окна Источники данных. Дополнительные сведения см. в разделе "Настройка элемента управления для создания при перетаскивании из окна источников данных".
Создание формы с привязкой к данным посредством перетаскивания элементов из окна Источники данных на форму.
Добавьте методы для прямого доступа к базе данных и выполнения вставок, обновлений и удалений.
Необходимые компоненты
Действия, описанные в этом руководстве, работают с платформа .NET Framework приложениями Windows Forms.
В этом руководстве используется SQL Server Express LocalDB и пример базы данных Northwind.
Если у вас нет SQL Server Express LocalDB, установите его на странице скачивания SQL Server Express или с помощью Установщика Visual Studio. В установщике Visual Studio можно установить SQL Server Express LocalDB как часть рабочей нагрузки хранилища данных и обработки или как отдельный компонент.
Установите пример базы данных Northwind, выполнив следующие действия.
В Visual Studio откройте окно обозреватель объектов SQL Server. (SQL Server обозреватель объектов устанавливается как часть рабочей нагрузки хранилища данных и обработки в Visual Studio Installer.) Разверните узел SQL Server. Щелкните правой кнопкой мыши экземпляр LocalDB и выберите новый запрос.
Откроется окно редактора запросов.
Скопируйте скрипт Northwind Transact-SQL в буфер обмена. Этот скрипт T-SQL создает базу данных Northwind с нуля и заполняет ее данными.
Вставьте скрипт T-SQL в редактор запросов и нажмите кнопку "Выполнить ".
Через некоторое время запрос завершает работу и создается база данных Northwind.
Создание приложения Windows Forms
Первым шагом является создание приложения Windows Forms (платформа .NET Framework). Создайте проект с помощью типа проекта приложения Windows Forms с помощью C# или Visual Basic.
Примечание.
Код для этого руководства доступен в C# и Visual Basic. Чтобы переключить язык кода на этой странице между C# и Visual Basic, используйте переключатель языка кода в верхней части страницы справа.
Создание источника данных из базы данных
В этом шаге Мастер настройки источника данных используется для создания источника данных на основе таблицы Region
в учебной базе данных "Борей". Для создания подключения необходимо иметь доступ к учебной базе данных "Борей". Сведения о настройке образца базы данных Northwind см. в разделе "Практическое руководство. Установка примеров баз данных".
Создание источника данных
В меню Данные выберите пункт Показать источники данных.
Открывается окно Источники данных.
В окне Источники данных выберите Добавить новый источник данных, чтобы запустить Мастер настройки источника данных.
На экране "Выбор типа источника данных" выберите "База данных" и нажмите кнопку "Далее".
На экране выбора подключения к данным выполните одно из следующих действий.
Если подключение к образцу базы данных Northwind доступно в раскрывающемся списке, выберите его.
–или–
Выберите Новое подключение для открытия диалогового окна Добавить/изменить подключение.
Если для базы данных требуется пароль, выберите параметр для включения конфиденциальных данных и нажмите кнопку "Далее".
На экране "Сохранить строка подключения в файл конфигурации приложения" нажмите кнопку "Далее".
На экране "Выбор объектов базы данных" разверните узел "Таблицы".
Выберите таблицу
Region
и нажмите кнопку "Готово".Объект NorthwindDataSet добавляется в проект, и таблица
Region
отображается в окне Источники данных.
Добавление элементов управления в форму для отображения данных
Создайте элементы управления с привязкой к данным с помощью перетаскивания элементов из окна Источники данных на форму.
Чтобы создать элементы управления привязанными данными в форме Windows, перетащите основной узел региона из окна источников данных в форму.
На форме появляется элемент DataGridView и панель инструментов (BindingNavigator) для перемещения по записям. Объект NorthwindDataSet, RegionTableAdapter
BindingSourceи BindingNavigator отображается в области компонентов.
Порядок добавления кнопок, вызывающих отдельные методы DbDirect адаптера таблицы
Перетащите три элемента управления Button из области элементов на Form1 (под RegionDataGridView).
Задайте следующие свойства Имя и Текст для каждой из кнопок.
Имя. Текст InsertButton
Insert UpdateButton
Update DeleteButton
Удаление
Добавление кода для вставки новых записей в базу данных
Выберите InsertButton , чтобы создать обработчик событий для события щелчка и открыть форму в редакторе кода.
Замените обработчик событий
InsertButton_Click
следующим кодом:private void InsertButton_Click(object sender, EventArgs e) { Int32 newRegionID = 5; String newRegionDescription = "NorthEastern"; try { regionTableAdapter1.Insert(newRegionID, newRegionDescription); } catch (Exception ex) { MessageBox.Show("Insert Failed"); } RefreshDataset(); } private void RefreshDataset() { this.regionTableAdapter1.Fill(this.northwindDataSet1.Region); }
Примечание.
В зависимости от используемой версии Visual Studio и используемых шаблонов проектов имена переменных, например
regionTableAdapter
илиregionTableAdapter1
используемые в этом коде, могут или не имеют значения 1 в созданном коде. Внесите исправления в код, чтобы убедиться, что правильное имя используется везде. В Visual Studio отображается красная волнистая стрелка, в которой имя неверно.
Добавление кода для обновления записей в базе данных
Дважды щелкните UpdateButton, чтобы создать обработчик событий для события щелчка кнопкой мыши и открыть форму в редакторе кода.
Замените обработчик событий
UpdateButton_Click
следующим кодом:
Добавление кода для удаления записей из базы данных
Выберите DeleteButton , чтобы создать обработчик событий для события щелчка и открыть форму в редакторе кода.
Замените обработчик событий
DeleteButton_Click
следующим кодом:
Выполнение приложения
Выберите F5 , чтобы запустить приложение.
Нажмите кнопку "Вставить " и убедитесь, что новая запись появится в сетке.
Нажмите кнопку "Обновить " и убедитесь, что запись обновлена в сетке.
Нажмите кнопку "Удалить " и убедитесь, что запись удалена из сетки.
Следующие шаги
В зависимости от требований приложения может потребоваться выполнить несколько шагов после создания формы, привязанной к данным. Некоторые улучшения, которые можно сделать в этом руководстве, включают:
Добавление функциональности поиска в форму.
Добавление дополнительных таблиц в набор данных посредством выбора элемента Настроить набор данных с помощью мастера в окне Источники данных. Вы можете добавить элементы управления, отображающие связанные данные, перетащив связанные узлы на форму. Дополнительные сведения см. в разделе "Связи" в наборах данных.