截至2015年1月,何时在哪里应用EnableQueryAttribute是正确/不正确的?
下面链接的文档:
说:
[EnableQuery] 属性允许客户端使用查询选项(例如 $filter、$sort 和 $page)修改查询。有关更多信息,请参阅支持 OData 查询选项。
以下链接的文档:
http://www.asp.net/web-api/overview/odata-support-in-aspnet-web-api/supporting-odata-query-options
说: EnableQuerySupport方法在返回IQueryable类型的任何控制器操作中全局启用查询选项。 但是,这份关于WebApi 2.2上OData 4的文档将其放在返回IHttpActionResult的操作上:[ODataRoutePrefix("Teams")]
public class TeamsEntitySetController : ODataController
{
private readonly LeageContext _leage = new LeageContext();
[EnableQuery]
[ODataRoute]
public IHttpActionResult GetFeed()
{
return Ok(_leage.Teams);
}
[ODataRoute("({id})")]
[EnableQuery]
public IHttpActionResult GetEntity(int id)
{
return Ok(SingleResult.Create<Team>(_leage.Teams.Where(t => t.Id == id)));
}
}
我正在疯狂地寻找关于OData v4 / WebApi 2.2的最新、准确和一致的文档。
今天哪个是正确的?