Чтение онлайн

ЖАНРЫ

Язык программирования C#9 и платформа .NET5
Шрифт:

Гибкое сопоставление с запросом или таблицей

Экземпляр ChangeTracker

События ChangeTracker

Сброс состояния DbContext

Сущности

Сопоставление свойств со столбцами

Сопоставление классов с таблицами

Сопоставление "таблица на иерархию" (ТРН)

Сопоставление "таблица на тип" (ТРТ)

Навигационные свойства и внешние ключи

Отсутствие свойств для внешних ключей

Отношения "один ко многим"

Отношения "один к одному"

Отношения "многие ко многим" (нововведение в версии EF Core 5)

Каскадное поведение

Необязательные отношения

Обязательные отношения

Соглашения, связанные с сущностями

Отображение свойств на столбцы

Аннотации данных Entity Framework

Аннотации и навигационные свойства

Интерфейс Fluent API

Отображение классов и свойств

Стандартные значения

Вычисляемые столбцы

Отношения "один ко многим"

Отношения "один к одному"

Отношения "многие ко многим"

Соглашения, аннотации данных и Fluent API — что выбрать?

Выполнение запросов

Смешанное выполнение на клиентской и серверной сторонах

Сравнение отслеживаемых и неотслеживаемых запросов

Важные функциональные средства EF Core

Обработка значений, генерируемых базой данных

Проверка параллелизма

Устойчивость подключений

Связанные данные

Энергичная загрузка

Фильтрованные включаемые данные

Энергичная загрузка с разделением запросов

Явная загрузка

Ленивая загрузка

Глобальные фильтры запросов

Глобальные

фильтры запросов на навигационных свойствах

Явная загрузка с глобальными фильтрами запросов

Выполнение низкоуровневых запросов SQL с помощью LINQ

Пакетирование операторов

Принадлежащие сущностные типы

Сопоставление с функциями базы данных

Команды CLI глобального инструмента EF Core

Команды для управления миграциями

Команда add

Исключение таблиц из миграций

Команда remove

Команда list

Команда script

Команды для управления базой данных

Команда drop

Команда update

Команды для управления типами DbContext

Команда scaffold

Резюме

Глава 23

"Сначала код" или "сначала база данных"

Создание проектов AutoLot.Dal и AutoLot.Models

Создание шаблонов для класса, производного от DbContext, и сущностных классов

Переключение на подход "сначала код"

Создание фабрики экземпляров класса, производного от DbContext, на этапе проектирования

Создание начальной миграции

Применение миграции

Обновление модели

Сущности

Класс BaseEntity

Принадлежащий сущностный класс Person

Сущность Car(Inventory)

Сущность Customer

Сущность Make

Сущность CreditRisk

Сущность Order

Сущность SeriLogEntry

Класс ApplicationDbContext

Обновление кода Fluent API

Сущность SeriLogEntry

Поделиться с друзьями: