0

Существует рекомендуемая максимальная сумма .Include операторов для использования в запросе Entity Framework.Entity Framework Включает

Я думаю, что я читал где-то Microsoft рекомендует не более трех, но я не могу найти этот источник.

Заранее спасибо.

ответ

1

См соображения производительности для структуры объекта http://msdn.microsoft.com/en-us/data/hh949853.aspx (р 8.2.2):

Это занимает довольно много времени для запроса с несколькими Включите заявления в нем, чтобы пройти через наш внутренний план компилятор для создания магазина команда. Большая часть этого времени тратится на оптимизацию полученного запроса. Сгенерированная команда хранилища будет содержать Outer Join или Union для каждого Include, в зависимости от вашего сопоставления. Подобные запросы приведут к созданию большого количества подключенных графиков из вашей базы данных в одной полезной нагрузке, что будет способствовать устранению любых проблем с пропускной способностью, особенно когда в полезной нагрузке имеется много избыточности (т. Е. С несколькими уровнями Include для обхода ассоциаций в одностороннем -ное направление).

Я предлагаю использовать SQL Profiler или EF Profiler (F.E. ЭфПроф), которые могут помочь с производительностью вопросы

Смежные вопросы