2016-06-13 72 views
0

试图在WebApi 2中使用OData过滤器。odata开放式过滤器

但它似乎不是在开放类型(动态属性)上工作。

接收错误:

验证样CollectionOpenPropertyAccess的OData的QueryNode不 通过FilterQueryValidator支持。

服务器返回包含Id和属性,并在属性中的对象数组我有属性包含字符串数组..我想过滤这个数组..我确定我的请求url是好的,因为它适用于普通数据。我认为问题是在开放式..我发现这个问题是非常相似的:https://stackoverflow.com/questions/33427594/filter-by-datetime-with-odata-in-dictionary/33442032,但没有答案?

使用:的OData v4和WebApi2

实例服务器结果:

{ 
    "Id": 1, 
    "[email protected]": "#Collection(String)", 
    "Context": [ 
     "Context1", "Context2" 
    ] 
} 

HTTP请求示例:

http://localhost/API/odata/GetItems(id=30045)?$count=true&$filter=Context%2Fany(c:+c+eq+%27Context1%27)&$format=json&$top=5 

回答