另一个JSON对象中的JSON对象的Odata过滤器

时间:2015-12-28 09:28:29

标签: odata odata-v4

我有一个odata服务,返回如下所示的Json对象,我想过滤国家/地区的数据。可能吗?



{
"Name": "Abc",
"Gender": "Male",
"Address": [
              {
                "Street": "Mystreet",
                "City": "Somecity",
                "Country": "Somecountry",
              }
           ]
}




我知道我们可以使用"服务网址对性别进行过滤? $ filter =性别eq男"但我如何在国家过滤它?

1 个答案:

答案 0 :(得分:0)

由于这是一个数组,您可以使用OData函数anyall。在您的情况下,我猜您会想要使用any(意思是,他们拥有任何地址的所有人都可以使用此国家/地区。

要使用您的网址实现这一点,它将是这样的:

People?$filter=Address/any(address: address/Country eq 'Somecountry')

以下是使用非常相似的示例TripPin服务的示例: http://services.odata.org/V4/(S(gl4oqd3rz5uzuqjryt1be5mr))/TripPinServiceRW/People?$filter=AddressInfo/any(address: address/Address eq '187 Suffolk Ln.')