我正在尝试使用像 Odata 查询这样的扩展实体中的过滤器
https://labstest.science.com/DEV/odata/ROOM_REQUEST?$expand=REQ_COLONYROOM($select=Name;$filter=Name eq 'RB05')
这部分有效。它为名称不等于 RB05 的 REQ_COLONYROOM 带来所有带有 Null 的 ROOM_REQUEST
{
"@odata.context": "https://labstest.science.com/DEV/odata/$metadata#ROOM_REQUEST(REQ_COLONYROOM(Name))",
"value": [
{
"Id": 18399308,
"Name": "M1",
"Barcode": "M1",
"REQ_COLONYROOM": null
},
{
"Id": 18403071,
"Name": "M2",
"Barcode": "M2",
"REQ_COLONYROOM": {
"@odata.id": "https://labstest.science.com/odata/COLONY_ROOM('MC19')",
"Name": "RB05"
}
},
{
"Id": 18403109,
"Name": "M3",
"Barcode": "M3",
"REQ_COLONYROOM": null
}]}
虽然 M1 和 M3 的 Colony 与 RB05 不同,但它通过 odata 调用返回 Null
最佳答案
你有没有试过这样的事情:
https://labstest.science.com/DEV/odata/ROOM_REQUEST?$expand=REQ_COLONYROOM&$select=REQ_COLONYROOM/Name&$filter=REQ_COLONYROOM/Name eq 'RB05'
我认为没有 SELECT 就足够了:
https://labstest.science.com/DEV/odata/ROOM_REQUEST?$expand=REQ_COLONYROOM&$filter=REQ_COLONYROOM/Name eq 'RB05'
关于asp.net-mvc - 在 Odata 查询的 $expand 中使用 $filter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49988592/