Общие методы для оптимизации LINQ

  • Использовать Stored procedures для сложного чтения
    Для сложного чтения из базы вместо LINQ используйте stored procedures (фильтры, поиск, большое количество данных, большое число параметров).
  • Применять LINQ Include для включения связанных данных
    Используйте LINQ Include, чтобы сразу включить в запрос дополнительные связанные небольшие таблицы (иначе внешние ключи будут делать много лишних запросов из за lazy loading).
  • Использовать SQL в связке с Dapper для сложных и долгих запросов
    Для сложных и долгих запросов имеет смысл использовать не LINQ, а SQL в связке с Dapper (https://gist.github.com/panesofglass/5212462).
    Это средство исполнения SQL и мапинга результата в объекты. Вы можете мапить в Entity объекты, либо в dymanic объекты. В некоторых случаях Dapper дает выигрыш более чем в 5 раз по сравнению в LINQ.
  • Применять по возможности Data Reader
    Data Reader – это самый быстрый способ извлечения большого списка данных (если не Data Reader – то тогда используйте Dapper, как более удобную оболочку).
Руслан Раянов

Recent Posts

Cтандартизация задач сотрудника через личный кабинет #личныйкабинет

https://falconspace.ru/blog/sozdanie-arm-dlya-sotrudnikov--razrabotka-lichnogo-kabineta-dlya-sotrudnikov - Как сделать АРМ сотрудника. Личный кабинет сотрудника на сайте

2 дня ago

Контроль доступа к ресурсам информационной системы

https://falconspace.ru/blog/sozdanie-arm-dlya-sotrudnikov--razrabotka-lichnogo-kabineta-dlya-sotrudnikov - Как сделать АРМ сотрудника. Личный кабинет сотрудника на сайте

3 дня ago

Что дает личный кабинет для руководства компании?

https://falconspace.ru/blog/sozdanie-arm-dlya-sotrudnikov--razrabotka-lichnogo-kabineta-dlya-sotrudnikov - Как сделать АРМ сотрудника. Личный кабинет сотрудника на сайте

4 дня ago

Почему управление дистанционно вызывает опасение? В сети куча мошенников

https://falconspace.ru/blog/pro-udalennoe-vzaimodeystvie-zakazchika-i-podryadchika - Удаленное взаимодействие между заказчиками и разработчиками

6 дней ago

Удаленное взаимодействие между заказчиками и разработчиками #личныйкабинет

С одной стороны сразу видится кучу выгод от удаленной работы, но как-то страшно и боязно…

1 неделя ago

Почему управление дистанционно вызывает опасение? Я могу физически контролировать подрядчика

https://falconspace.ru/blog/pro-udalennoe-vzaimodeystvie-zakazchika-i-podryadchika - Удаленное взаимодействие между заказчиками и разработчиками

1 неделя ago