Учебники

Entity Framework — Обзор

Entity Framework был впервые выпущен в 2008 году, основным средством взаимодействия Microsoft между приложениями .NET и реляционными базами данных. Entity Framework — это Object Relational Mapper (ORM), который представляет собой тип инструмента, который упрощает сопоставление между объектами в вашем программном обеспечении и таблицами и столбцами реляционной базы данных.

  • Entity Framework (EF) — это среда ORM с открытым исходным кодом для ADO.NET, которая является частью .NET Framework.

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

  • ORM также помогает отслеживать изменения в этих объектах, и при получении инструкции он также сохраняет эти изменения обратно в базу данных для вас.

Entity Framework (EF) — это среда ORM с открытым исходным кодом для ADO.NET, которая является частью .NET Framework.

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

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

Почему Entity Framework?

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

  • Entity Framework может генерировать необходимые команды базы данных для чтения или записи данных в базу данных и выполнять их для вас.

  • Если вы запрашиваете, вы можете выразить свои запросы к объектам вашего домена, используя LINQ для сущностей.

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

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

Если вы запрашиваете, вы можете выразить свои запросы к объектам вашего домена, используя LINQ для сущностей.

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

На рынке есть и другие ORM, такие как NHibernate и LLBLGen Pro. Большинство ORM обычно отображают типы доменов непосредственно в схему базы данных.

Типичный ОРМ

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

EF Метаданные времени выполнения

  • Entity Framework — это рекомендованная Microsoft технология доступа к данным для новых приложений.

  • ADO.NET, кажется, напрямую ссылается на технологию для наборов данных и таблиц данных.

  • Entity Framework — это то место, где делаются все инвестиции, продвигающиеся вперед, что имело место уже в течение ряда лет.

  • Microsoft рекомендует использовать Entity Framework поверх ADO.NET или LINQ to SQL для всех новых разработок.

Entity Framework — это рекомендованная Microsoft технология доступа к данным для новых приложений.

ADO.NET, кажется, напрямую ссылается на технологию для наборов данных и таблиц данных.

Entity Framework — это то место, где делаются все инвестиции, продвигающиеся вперед, что имело место уже в течение ряда лет.

Microsoft рекомендует использовать Entity Framework поверх ADO.NET или LINQ to SQL для всех новых разработок.

Концептуальная модель

Для разработчиков, которые привыкли к разработке, ориентированной на базы данных, самый большой сдвиг в Entity Framework заключается в том, что он позволяет вам сосредоточиться на своей бизнес-сфере. Что вы хотите, чтобы ваше приложение делало, не ограничиваясь возможностями базы данных?

  • В Entity Framework координационный центр называется концептуальной моделью. Это модель объектов в вашем приложении, а не модель базы данных, которую вы используете для сохранения данных вашего приложения.

  • Ваша концептуальная модель может совпасть с вашей схемой базы данных или может быть совсем другой.

  • Вы можете использовать Visual Designer для определения вашей концептуальной модели, которая затем может генерировать классы, которые вы в конечном итоге будете использовать в своем приложении.

  • Вы можете просто определить свои классы и использовать функцию Entity Framework, которая называется Code First. И тогда Entity Framework постигнет концептуальную модель.

В Entity Framework координационный центр называется концептуальной моделью. Это модель объектов в вашем приложении, а не модель базы данных, которую вы используете для сохранения данных вашего приложения.

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

Вы можете использовать Visual Designer для определения вашей концептуальной модели, которая затем может генерировать классы, которые вы в конечном итоге будете использовать в своем приложении.

Вы можете просто определить свои классы и использовать функцию Entity Framework, которая называется Code First. И тогда Entity Framework постигнет концептуальную модель.

Концептуальная модель

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

Характеристики

Ниже приведены основные функции Entity Framework. Этот список создан на основе наиболее заметных функций, а также на основе часто задаваемых вопросов о Entity Framework.