Учитывая следующий сценарий
public class Student {
public long Id { get; set; }
public Guid Uid { get; set; }
public string FirstName { get; set; }
public string LastName { get; set; }
public IEnumerable<Subject> Subjects { get; set; }
}
public class Subject {
public long Id { get; set; }
public Guid Uid { get; set; }
public string Name { get; set; }
}
Теперь, используя odata, я делаю следующий запрос
~/api/students?$filter=Subjects/any(subject: subject/Uid eq (guid'some-guid'))
Запрос выше работает отлично. Но если я использую оператор IN
вместо eq
, я получаю сообщение об ошибке. Это запрос к примеру.
~/api/students?$filter=Subjects/any(subject: subject/Uid in ((guid'some-guid'), (guid'some-other-guid')))
Я получаю ошибку
')' or ',' expected at position 34 in 'Subjects/any(subject: subject/Uid in ((guid'some-guid'), (guid'some-other-guid'))'.