Модель EF хранит сведения о сопоставлении классов и свойств приложений с таблицами и столбцами баз данных. Модель EF можно создать двумя способами.
С помощью Code First: разработчик пишет код, чтобы указать модель. Во время выполнения EF создает модели и сопоставления на основе классов сущностей и дополнительной конфигурации модели, предоставленных разработчиком.
С помощью Entity Framework Designer: разработчик рисует поля и строки для указания модели с помощью Entity Framework Designer. Результирующая модель хранится в виде XML-файла с расширением EDMX. Объекты предметной области приложения обычно создаются автоматически на основе концептуальной модели.
Рабочие процессы EF
Оба этих подхода можно применять для использования в целевой базе данных или создания базы данных, что в итоге составляет 4 различных рабочих процесса.
Узнайте, какие из них подходят вам лучше всего.
Если после просмотра видеоролика вы все еще не можете решить, что будете использовать — Entity Framework Designer или Code First, — изучите оба подхода.
Взгляд изнутри
Независимо от того, используете ли вы Code First или Entity Framework Designer, модель EF всегда состоит из нескольких компонентов.
Объекты предметной области приложения или сами типы сущностей. Этот уровень часто называют уровнем объектов.
Концептуальная модель, состоящая из соответствующих предметной области типов сущностей и связей, описываемых с помощью модели EDM. Этот уровень часто указывается с буквой C, означающей conceptual (концептуальный).
Модель хранения, представляющая таблицы, столбцы и связи, как определено в базе данных. Этот уровень часто указывается с буквой S, означающей S (хранение).
Сопоставление концептуальной модели со схемой базы данных. Это сопоставление, часто называют сопоставлением C-S.
Подсистема сопоставления EF использует сопоставление C-S для преобразования операций с сущностями (создание, чтение, обновление и удаление) в эквивалентные операции для таблиц в базе данных.
Сопоставление концептуальной модели и объектов приложения часто называют сопоставлением O-C. По сравнению с сопоставлением C-S сопоставление O-C является неявным и поддерживающим тип "один к одному": сущности, свойства и связи, определенные в концептуальной модели, необходимы для соответствия фигурам и типам объектов .NET. В EF4 и более поздних версиях уровень объектов может состоять из простых объектов со свойствами без зависимостей от EF. Они обычно называются традиционными объектами среды CLR (POCO), и сопоставление типов и свойств выполняется на основе соглашений о соответствии имен. Ранее в EF 3.5 существовали определенные ограничения для уровня объектов, например, сущности должны быть производными от класса EntityObject и должны использовать атрибуты EF для реализации сопоставления O-C.
Совместная работа с нами на GitHub
Источник этого содержимого можно найти на GitHub, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.
Отзыв о .NET
.NET — это проект с открытым исходным кодом. Выберите ссылку, чтобы оставить отзыв:
В этом модуле описаны шаги по созданию проекта доступа к данным. Вы подключаетесь к реляционной базе данных и создаете запросы на создание, чтение, обновление и удаление (CRUD) с помощью Entity Framework Core (EF Core).