×
Вы действительно хотите открыть доступ к тестированию по курсу Entity Framework 6 на 40 дней?
ВИДЕОУРОК №3. Особенности LINQ
1) Технология программирования ORM 2) Архитектура Entity Framework 3) Создание моделей данных 4) Подход Database First 5) Подход Model First 6) Подход Code First
Entity Data Model (EDM) – модель сущностей или концептуальная модель между объектной моделью и БД, согласно которой определяются правила соответствия объектов элементам базы данных. Слои EDM:
- Язык определения концептуальной схемы (CSDL)
- Язык определения схемы хранения (SSDL)
- Язык определения сопоставлений (MSL)
Большинство операций с данными представляют собой CRUD-операции (Create, Read, Update, Delete), то есть получение данных, создание, обновление и удаление. Entity Framework позволяет легко производить данные операции. В этом уроке также будет рассмотрены связи между сущностями. Связи позволяют моделировать отношения между объектами предметной области Виды связей:
- один к одному
- один ко многим
- многие ко многим
В данном уроке будут подробно рассмотрены способы написнаия LINQ запросов. LINQ to Entities предлагает простой и интуитивно понятный подход для получения данных с помощью выражений, которые по форме близки выражениям языка SQL. В большинстве случаев разработчики смогут создать эффективные запросы с помощью методов и операторов LINQ.
Code First один из наиболее популярных подходов при разработке приложений. При подходе Code First классы моделей сопоставляются с таблицами с помощью определенных правил в Entity Framework. Но иногда необходимо изменить или/и переопределить логику этих правил. Для этого используется Fluent API и Data Annotations. В этом уроке мы подробно рассмотрим работу с этой функциональностью Entity Framework.
Если нам необходимо, чтобы при первом обращении база данных уже была заполнена некоторыми начальными значениями, то мы можем произвести ее инициализацию. Для инициализации можно использовать один из классов инициализаторов, которые имеются в библиотеке .NET:
- CreateDatabaseIfNotExists
- DropCreateDatabaseIfModelChanges
- DropCreateDatabaseAlways
- MigrateDatabaseToLatestVersion
В этом уроке будут рассмотрены стратегии проецирования типов данных на базу данных: TPH (Table Per Hierarchy/Таблица на одну иерархию классов) для одной иерархии классов используется одна таблица. Данные базовых и производных классов сохраняются в одну таблицу, а для их отличия создается специальный столбец. Подход TPT (Table Per Type/Таблица на тип) предполагает сохранение в общей таблице только тех свойств, которые общие для всех классом-наследников, то есть которые определены в базовом классе. А те свойства, которые относятся только к производному классу, сохраняются в отдельной таблице. Подход TPC (Table Per Concrete Type/Таблица на каждый отдельный тип) предполагает создание для каждой модели по отдельной таблице. Столбцы в каждой таблице создаются по всем свойствам, в том числе и унаследованным. В данном уроке Вы также узнаете о способах асинхронного программирования в Entity Framework 6.0