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


Добавление источников данных в приложениях ADO.NET (.NET Framework)

При работе с средствами данных .NET в Visual Studio можно добавить источники данных (объекты .NET) для подключения приложения .NET к информации в хранилищах данных. Конструкторы Visual Studio могут использовать выходные данные источника данных, чтобы создать стандартный код, который привязывает данные к формам при перетаскивании объектов базы данных из окна "Источники данных ".

Примеры источников данных:

  • Класс в модели Entity Framework, связанный с какой-либо базой данных

  • Набор данных, связанный с какой-либо базой данных

  • Класс, представляющий сетевую службу, например службу данных Windows Communication Foundation (WCF) или службу REST

  • Класс, представляющий службу SharePoint

  • Класс или коллекция в решении

Замечание

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

Предпосылки

  • Приложение, реализующее объекты Windows Forms или формата презентации Windows (WPF), предназначенные для .NET Framework. Этот тип приложения можно создать с помощью шаблона в Visual Studio, если при установке выбрана нагрузка разработки .NET Desktop. Дополнительные сведения см. в разделе "Изменение рабочих нагрузок, компонентов и языковых пакетов Visual Studio".

    Это важно

    Функции, описанные в этой статье, не поддерживаются для разработки .NET Core для WPF или Windows Forms.

  • Приложение должно использовать функции привязки данных: наборы данных, Entity Framework, языковой интегрированный запрос (LINQ) к SQL, службе данных WCF или SharePoint.

    Подсказка

    Если приложение не использует один или несколько этих компонентов, концепция "источника данных" не применяется. В этих сценариях можно подключиться непосредственно к базе данных с помощью объектов класса SqlCommand .

Работа с источниками данных и Windows Forms

Вы создаете и редактируете источники данных для .NET Framework с помощью мастера настройки источника данных в приложении Windows Forms или WPF. Вы можете создать источник данных из базы данных, службы, объекта или из списка SharePoint:

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

После создания источников данных они отображаются в окне "Источники данных ". Когда проект открыт в Visual Studio, вы можете получить доступ к этому окну, выбрав "Просмотреть> другиеисточники данных>". Вы также можете использовать сочетание клавиш SHIFT+ALT+D .

В проекте Windows Forms, который предназначен для .NET Framework (не .NET Core или .NET 5 или более поздней версии), можно перетащить источник данных из окна источников данных в область конструктора формы Windows или элемент управления. Ниже приведены примеры подключения источника данных к форме:

  • Перетащите таблицу, чтобы получить BindingNavigator и DataGridView для таблицы.

  • Перетащите определенный столбец, чтобы получить BindingNavigator с меткой и текстовым полем для столбца.

  • Перетащите все столбцы таблицы, чтобы получить полную форму просмотра данных для таблицы.

Эти действия активируют Visual Studio для создания стандартного кода, отображающего данные из хранилища данных. В следующем примере показан набор данных, помещенный на форму Windows. Если выбрать F5 в приложении, данные из базовой базы данных отображаются в элементах управления формы.

Снимок экрана: перетаскивание набора данных в форму Windows в Visual Studio 2022.

Создайте источник данных из базы данных или файла базы данных

Можно создать набор данных или модель Entity Framework для использования в качестве источника данных для базы данных или файла базы данных с помощью мастера настройки источника данных. Если конфигурация использует Entity Framework, сначала создайте классы Entity, а затем используйте мастер для создания источников данных.

Создание набора данных в качестве источника данных

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

Выполните следующие действия, чтобы создать набор данных в качестве источника данных:

  1. В Visual Studio выберите Проект>Добавить новый источник данных, чтобы открыть Мастер настройки источника данных.

  2. Для типа источника данных выберите "База данных".

  3. Для модели базы данных выберите набор данных.

  4. Следуйте инструкциям, чтобы указать новое или существующее подключение к базе данных или файл базы данных.

  5. Выберите объекты базы данных, которые необходимо включить в набор данных, и завершите работу мастера.

Подробные инструкции по завершению работы мастера см. в статье "Создание и настройка наборов данных в .NET Framework с использованием Visual Studio".

Создание модели Entity Framework в качестве источника данных

Когда конфигурация использует Entity Framework, сначала создайте классы сущностей, а затем используйте мастер настройки источника данных для создания источника данных.

Выполните следующие действия, чтобы создать модель Entity Framework в качестве источника данных с помощью мастера модели данных сущности:

  1. Выберите ProjectAdd New Item (Добавить новый элемент> Появится диалоговое окно добавления нового элемента.

  2. В диалоговом окне выберите шаблон модели данных сущности ADO.NET , введите имя экземпляра модели и нажмите кнопку "Добавить".

    Снимок экрана: создание новой модели данных сущности ADO.NET с помощью диалогового окна

    Откроется мастер модели данных сущности.

  3. В мастере выберите метод для создания модели Entity Framework:

    • Ef Designer из базы данных: создает модель в конструкторе Entity Framework на основе существующей базы данных. Вы можете выбрать подключение к базе данных, параметры для модели и объекты базы данных, которые будут включены в модель. Классы, с которыми взаимодействует приложение, создаются из модели.

    • Пустая модель EF Designer: создает пустую модель в конструкторе Entity Framework в качестве отправной точки для визуального проектирования модели. Позже вы можете создать базу данных из модели. Классы, с которыми взаимодействует приложение, создаются из модели.

    • Пустая модель Code First: создает пустую модель Code First в качестве отправной точки для разработки модели с помощью кода. Позже вы можете создать базу данных из модели.

    • Code First from database: создает модель Code First на основе существующей базы данных. Вы можете выбрать подключение к базе данных, параметры для модели и объекты базы данных, которые будут включены в модель.

    Снимок экрана: параметры создания новой модели в мастере модели данных сущностей.

    После выбора нажмите кнопку "Далее, чтобы продолжить в мастере.

  4. Добавьте модель в качестве источника данных для приложения и завершите работу мастера.

    Подробные инструкции по выполнению мастера см. в разделе "Создание классов моделей" с помощью Entity Framework (C#).

  5. После создания классов для модели можно создать источник данных из объекта с помощью мастера настройки источника данных.

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

      Снимок экрана: созданные классы сущностей для модели в мастере настройки источника данных.

    Подробные инструкции см. в разделе "Создание источника данных из объекта".

Создание источника данных из сервиса

Мастер настройки источника данных поддерживает создание источника данных из службы. В этом подходе Visual Studio добавляет ссылку на службу в проект и создает прокси-объекты, соответствующие объектам, возвращаемым службой. Когда служба возвращает набор данных, служба представлена в проекте как набор данных. Если служба возвращает определенный тип, то в проекте она представляется как этот тип.

Вы можете создать источник данных из следующих типов служб:

Замечание

Элементы в окне источников данных зависят от данных, возвращаемых службой. Некоторые службы могут не предоставлять достаточно сведений для мастера настройки источника данных для создания привязываемых объектов. После завершения работы мастера, если служба возвращает нетипизированный набор данных, элементы не отображаются в окне «Источники данных». Нетипизированные наборы данных не предоставляют схему, поэтому мастер не имеет достаточно сведений для создания источника данных.

Выполните следующие действия, чтобы создать источник данных из службы:

  1. В Visual Studio выберите Проект>Добавить новый источник данных, чтобы открыть Мастер настройки источника данных.

  2. Для типа источника данных выберите "Служба".

    Откроется диалоговое окно "Добавить ссылку на службу ". Вы также можете получить доступ к этому диалогу, щелкнув проект правой кнопкой мыши в обозревателе решений и выбрав "Добавить ссылку на службу".

Подробные инструкции по завершению работы мастера см. в статье "Создание и настройка наборов данных в .NET Framework с использованием Visual Studio".

Создание источника данных из объекта

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

Все общедоступные свойства объекта отображаются в окне источников данных . Если вы используете Entity Framework с созданной моделью, в этом окне отображаются классы сущностей, которые являются источниками данных для приложения.

Замечание

Для поддержки привязки данных с помощью перетаскивания, объекты, реализующие интерфейс ITypedList или IListSource, должны иметь конструктор по умолчанию. В противном случае Visual Studio не может создать экземпляр объекта источника данных и отображает ошибку при перетаскивании элемента в область конструктора.

Выполните следующие действия, чтобы создать источник данных из объекта:

  1. В Visual Studio выберите Проект>Добавить новый источник данных, чтобы открыть Мастер настройки источника данных.

  2. Для типа источника данных выберите объект.

  3. На странице "Выбор объектов данных " разверните узлы в представлении дерева, чтобы найти объекты, к которым требуется привязаться.

    Дерево содержит узлы для вашего проекта, а также для сборок и других проектов, на которые ссылается ваш проект.

    1. Чтобы привязать объект в сборке или проекте, который не отображается в представлении дерева, нажмите кнопку "Добавить ссылку".

    2. Используйте диалоговое окно диспетчера ссылок , чтобы добавить ссылку на сборку или проект. После добавления ссылки Visual Studio добавляет сборку или проект в представление дерева.

    Замечание

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

Подробные инструкции по завершению работы мастера см. в статье "Создание и настройка наборов данных в .NET Framework с использованием Visual Studio".

Создание источника данных из списка SharePoint

Вы также можете использовать Мастер настройки источника данных для создания источника данных из списка SharePoint. SharePoint предоставляет данные через службы ДАННЫХ WCF, поэтому создание источника данных SharePoint совпадает с созданием источника данных из службы.

Замечание

Для этого подхода требуется пакет SDK Для SharePoint.

Выполните следующие действия, чтобы создать источник данных из списка SharePoint:

  1. В Visual Studio выберите Проект>Добавить новый источник данных, чтобы открыть Мастер настройки источника данных.

  2. Для типа источника данных выберите SharePoint.

  3. Используйте диалоговое окно "Добавление ссылки на службу служб" для подключения к службе данных SharePoint, указывая на SharePoint Server.

Подробные инструкции по завершению работы мастера см. в статье "Создание и настройка наборов данных в .NET Framework с использованием Visual Studio".