【发布时间】:2020-09-06 21:22:32
【问题描述】:
我想介绍一下我在使用 OData 过滤器选项时遇到的以下问题。
任何关于如何解决此问题的想法都将受到高度赞赏。
我的目标是解析 JSON 格式并只返回值
“WorkstationId”:“8E5B3291-E092-4091-8C9A-58B7C90E907C”,
我创建了以下请求,但它会生成以下错误消息; https://doesnotexist/MyApi/api/v1.0/locations?$expand=Workstations,AccessDomains,DefaultProfiles&$filter=Workstations/WorkstationName eq 'LP08'
“错误”:{ “代码”: ””, "message": "URI 中指定的查询无效。属性“WorkstationName”的属性访问的父值不是单个值。属性访问只能应用于单个值。",
错误是由我的过滤选项引起的:
filter=Workstations/WorkstationName eq 'LP08'
我的 JSON 文件;
"@odata.context": "https://doesnotexist/MyApi/api/v1.0/$metadata#locations",
"value": [
{
"LocationIdInternal": 1,
"LocationId": "B9507A00-9057-4CCC-A66B-9AAAB1B6CA5B",
"DisplayName": "DEFAULT_LOCATION",
"IsActive": true,
"Workstations": [
{
"WorkstationIdInternal": 1,
"WorkstationId": "E4FC58FB-7989-4C87-9216-0A3B9F52860E",
"WorkstationName": "EX08",
"WorkstationType": "Default"
},
{
"WorkstationIdInternal": 2,
"WorkstationId": "8E6DB912-F74F-444C-98D6-179747BBDE1A",
"WorkstationName": "LP08",
"WorkstationType": "Default"
},
{
"WorkstationIdInternal": 3,
"WorkstationId": "8E5B3291-E092-4091-8C9A-58B7C90E907C",
"WorkstationName": "OVER77",
"WorkstationType": "Default"
}
]
}
]
}
【问题讨论】: