Entity Framework (EF) — это объектно-реляционный акселератор (ORM) для .NET, позволяющий разработчикам работать с базами данных, используя объекты .NET, а не писать большую часть кода доступа к данным. Он преобразует LINQ-запросы в SQL и обратно.
Основные компоненты и возможности:
- DbContext: Представляет сессию работы с базой данных, включает DbSet'ы для сущностей.
- DbSet: Представляет коллекцию сущностей определенного типа в контексте.
- LINQ to Entities: Позволяет писать запросы к базе данных с использованием синтаксиса LINQ.
- Миграции (Code-First Migrations): Позволяют управлять изменениями схемы базы данных по мере развития модели данных в коде.
- Отслеживание изменений: EF автоматически отслеживает изменения, внесенные в сущности, загруженные из базы данных, и генерирует соответствующие команды SQL для сохранения этих изменений.
Поддерживаемые подходы разработки:
- Code-First: Определение модели данных в коде C# и генерация схемы базы данных на ее основе.
- Database-First: Создание модели .NET из существующей базы данных.
- Model-First: Создание графической модели в дизайнере EF и генерация как кода, так и схемы базы данных. (Менее распространенный в EF Core)
Преимущества:
- Ускорение разработки за счет абстракции от детали реализации доступа к данным.
- Сильная типизация и прове
Entity Framework (EF) — это объектно-реляционный акселератор (ORM) для .NET, позволяющий разработчикам работать с базами данных, используя объекты .NET, а не писать большую часть кода доступа к данным. Он преобразует LINQ-запросы в SQL и обратно.
Основные компоненты и возможности:
- DbContext: Представляет сессию работы с базой данных, включает DbSet'ы для сущностей.
- DbSet: Представляет коллекцию сущностей определенного типа в контексте.
- LINQ to Entities: Позволяет писать запросы к базе данных с использованием синтаксиса LINQ.
- Миграции (Code-First Migrations): Позволяют управлять изменениями схемы базы данных по мере развития модели данных в коде.
- Отслеживание изменений: EF автоматически отслеживает изменения, внесенные в сущности, загруженные из базы данных, и генерирует соответствующие команды SQL для сохранения этих изменений.
Поддерживаемые подходы разработки:
- Code-First: Определение модели данных в коде C# и генерация схемы базы данных на ее основе.
- Database-First: Создание модели .NET из существующей базы данных.
- Model-First: Создание графической модели в дизайнере EF и генерация как кода, так и схемы базы данных. (Менее распространенный в EF Core)
Преимущества:
- Ускорение разработки за счет абстракции от детали реализации доступа к данным.
- Сильная типизация и прове