Я пытаюсь отфильтровать набор сущностей на основании отсутствия существующей связи с каждым элементом в наборе, который я хочу вернуть. Мой запрос выглядит примерно так (что, очевидно, неверно), кто-нибудь знает, как Я могу сделать эту работу ...
B2B/Company
?$filter=References/Any(r => r/SystemId eq 'SystemX')
and not
Buckets/Any(b => b/ParentId eq 'ParentKey')
Я не могу найти ничего в OData spe c, который говорит о "выражениях проверки отрицательного фильтра", поэтому я предполагаю, что мне нужно использовать положительный проверьте, возможно, с подсчетом или что-то вроде этого ...
B2B/Company
?$filter=References/Any(r => r/SystemId eq 'SystemX')
and
count(Buckets/Any(b => b/ParentId eq 'ParentKey')) eq 0
, но я тоже не могу заставить это работать.
О моей модели
Компании имеют 1 или более ссылок, которые имеют Систему и Значение, система является источником, из которого мы получили эту ссылку. Компании также находятся в 0 или более сегментах.
Я ищу все компании, у которых есть ссылка из данной системы, но которые не связаны с сегментом с данным ParentId.