Entity Framework Core запрос данных слишком медленный - PullRequest
0 голосов
/ 18 сентября 2018

У меня есть отношение 1-много между двумя классами:

Родитель:

public class Parent
{
   public string Id { get; set; }

   public virtual IList<Child> Children{ get; set; 
}

Ребенок:

public class Child
{
   public string Key { get; set; }
   public string Value { get; set; }

   public virtual Parent Parent { get; set; } 
}

Мне нужно отфильтровать экземпляры родительского класса на основе списка экземпляров дочернего класса. Критерием является выбор всех родителей, чей список детей содержит все записи в списке литературы. У меня есть следующий код:

IQueryable<Parent> parentsWithChildrenData = GetParentsWithChildren();

// Filter:
var referenceList = new List<Children>() { // Definition here };
parentsWithChildrenData
   .Where(x => referenceList.All(o => x.Children.Contains(o, new ChildrenComparer()))).ToList();

Несмотря на то, что этот запрос верен, он занимает слишком много времени. Как я могу заставить это работать быстрее?

...