【问题标题】:OData v4: how to make $select work on bound functionsOData v4:如何使 $select 在绑定函数上工作
【发布时间】:2015-03-25 08:17:37
【问题描述】:

使用 oData v4(特别是 Microsoft.AspNet.Odata 5.3.0 和 Microsoft.Odata.Core 6.7.0),即使我已将函数声明为IsComposable = true。

有什么建议可以让这个场景发挥作用吗?我主要对 $filter 和 $select 感兴趣。

-最大

详细信息(基于 https://github.com/OData/ODataSamples 中的 FunctionSamples)

尝试查询: http://localhost:9010/odata/Products/Default.Top10()?$select=Name

预期响应(摘录)

{
Name: "Product 48"
}

实际反应(摘录)

{
Id: 48,
Name: "Product 48",
Price: 986.2794056470876
}

函数声明:

// Function bound to a collection
// Returns the top 10 product, a collection
productType.Collection
   .Function("Top10")
   .ReturnsCollectionFromEntitySet<Product>("Products")
   .IsComposable = true;

控制器:

// Returns the top ten most expensive products
[HttpGet]
public IHttpActionResult Top10()
{
    var retval = _data.Values.OrderByDescending(p => p.Price).Take(10).ToList();

    return Ok(retval);
}

【问题讨论】:

    标签: .net odata


    【解决方案1】:

    原来我需要将控制器方法标记为[EnableQuery]。

    【讨论】:

      猜你喜欢
      • 2022-10-24
      • 2014-10-05
      • 2017-05-20
      • 2019-10-22
      • 2015-11-06
      • 2015-03-11
      • 2013-04-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多