Эффективная работа с EntityFramework Core

Опубликовано: 11 Октябрь 2024
на канале: Sergei Calabonga
10,542
549

#EntityFrameworkCore #performance #ORM

В этом видео попытаюсь объяснить основные правила работы с ORM под названием EntityFramework Core.

Определения:
EntityFramework Core = ORM
ORM = Object–relational mapping
NET: ADO.NET Entity Framework, NHibernate, Dapper…
Двухуровневая архитектура = Client + Database
Трёхуровневая архитектура = Client + BusinessLogic + Database
BusinessLogic – уровень бизнес-логики, где обычно «живет» Clean
Architecture, Domain-Driven Design и прочие подходы
Бизнес-логики на клиенте быть не может по определению

Затронутые аспекты:
Правильно использовать индексы
Project только необходимые свойства
Ограничить размер результирующего набора
Избегайте декартового развертывания при загрузке связанных сущностей
Загружайте связанные сущности по возможности
Будьте осторожны с отложенной загрузкой
«Всё сразу» или «по одной» (буферизация или поток)
Отслеживание изменений (ChangeTracker)
Необработанные SQL-запросы (FromSqlRaw + HasDbFunction)
Асинхронное программирование


Ссылки
https://docs.microsoft.com/ru-ru/ef/c...
https://docs.microsoft.com/ru-ru/ef/c...
https://docs.microsoft.com/ru-ru/arch...

Благодарности и помощь каналу принимаются:
https://www.calabonga.net/site/thanks