У нас есть class Project
со многими Sprints
.Производительность: навигационная опора. vs sql
Project
имеет ICollection<Sprints>
. Я хочу выбрать и разделить их на Sprints
и вернуться к пользователю из веб-приложения.
Я могу выбрать этот путь: project.Sprints.Skip(...).Take(...)
или
таким образомsprints.Where(x=>x.ProjectId == some_projectId).Skip(...).Take(...)
.
Я хочу понять разницу в производительности между выбором и разбиением на страницы ICollection<T>
в качестве свойства навигации и как IQueryable
.
первого путь я думаю, что буду не очень хорошо besause всех Sprints
повторяются в памяти второго пути может быть медленнее, если есть много-много Sprints
на столе (а также она выглядит менее очевидно).
Но как вы думаете?
P.S. Я использую сущность framework 6.0.1 codefirst. Спасибо за ваше время!
спасибо, теперь я не сомневаюсь, что выбрать (2-й путь) – Romko