【问题标题】:odata open type filterodata 开放式过滤器
【发布时间】:2016-07-06 08:56:12
【问题描述】:

尝试在 WebApi 2 中使用 OData 过滤器。

但它似乎不适用于开放类型(动态属性)。

接收错误:

验证 CollectionOpenPropertyAccess 类型的 OData QueryNode 不是 FilterQueryValidator 支持。

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

使用:Odata v4 和 WebApi2

示例服务器结果:

{
    "Id": 1,
    "Context@odata.type": "#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

【问题讨论】:

    标签: asp.net-web-api odata odata-v4


    【解决方案1】:

    目前不支持,打开问题跟踪

    https://github.com/OData/WebApi/issues/770

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-02-02
      • 2016-01-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多