Я пытался использовать оператор GroupJoin, чтобы выполнить левое внешнее объединение для двух таблиц, чтобы я мог получить список строк в таблице A, у которых нет элементов в таблице B. Однако я продолжаю получать исключение
Exception found: Processing of the LINQ expression 'DbSet<People>
.GroupJoin(
outer: DbSet<RiskGroup>,
inner: person => (Nullable<int>)person.Id,
outerKeySelector: risk => risk.AssessorId,
innerKeySelector: (person, risks) => new {
person = person,
risks = risks
.DefaultIfEmpty()
})' by 'NavigationExpandingExpressionVisitor' failed.
, что, по-видимому, означает, что это невозможно в EF Core v3. Кто-нибудь знает, как обойти эту проблему, или мой LINQ неверен ниже:
var Ids = destContext.People.GroupJoin(destContext.RiskGroup,
person => person.Id,
risk => risk.AssessorId,
(person, risks) => new { person, risks = risks.DefaultIfEmpty() }).ToList();
Я пытаюсь найти все строки в таблице person, у которых нет строк в таблице RiskGroup.