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

Сайтостроение | создано: 7/24/2021 | опубликовано: 7/24/2021 | обновлено: 11/14/2022 | просмотров: 72

В этом видео про: calabonga, backend, программирование, обучение, шаблоны, паттерны, csharp, Blazor, architecture, архитектура, aspnetcore, ef, EntityFramework Core, 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/core/performance/efficient-querying#avoid-cartesian-explosion-when-loading-related-entities

https://docs.microsoft.com/ru-ru/ef/core/querying/null-comparisons#writing-performant-queries

https://docs.microsoft.com/ru-ru/archive/msdn-magazine/2016/may/data-points-dapper-entity-framework-and-hybrid-apps

Стать спонсором:
https://www.youtube.com/channel/UCWqjyIe9-ukFyG7I3eMVt4A/join

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