У меня есть некоторые проблемы в фильтре Odata с вложенным свойством,
Контроллер:
[HTTPGet]
[EnableQuery]
public async Task<IQueryable<MyObj>> GetData()
{
return await GetUserData();
}
Вывод из веб-приложения для запроса get url,
GET https://sample.com/IB
[{
"Id": "1",
"FirstName": "Alex",
"School": [
{
"SchoolId": "Sc1",
"Roles": [
{
"Role": "ROOT",
}
],
"Email": "abc@xyz.com"
}
]
},
{
"Id": "2",
"FirstName": "Mage",
"School": [
{
"SchoolId": "Sc2",
"Roles": [
{
"Role": "Admin",
}
],
"Email": "abc@xyz.com"
}
]
}]
Как получить результаты школы, где SchoolId = "Sc2"
Я пробовал с нижеприведенным URL,
GET https://sample.com/IB?$expand=School&$filter=School/SchoolId eq 'Sc2'
, но я получил следующее сообщение об ошибке,
{
"Message": "The query specified in the URI is not valid. The parent value for a property access of a property 'SchoolId' is not a single value. Property access can only be applied to a single value."
}
Есть мысли?