ASP.net MVC 4(Web api)OData 配置

2023-11-25

一直在玩(单页应用程序)BigShelf样本。我发现真正有趣的是 GetBooksForSearch 方法 (/api/BigShelf/GetBooksForSearch),它需要额外的$filter, $inlinecount, $top, $skip寻呼和过滤结果的参数,这些参数不存在于控制器代码中:

public IQueryable<Book> GetBooksForSearch
    (string profileIds, Sort sort, bool sortAscending)

我找不到任何关于该控制器如何翻译和过滤结果的文档,更重要的是,如何配置这种行为(例如,限制最大结果),有人有线索吗?

- 更新 -

发现 MVC Web API 可以解决这个问题。但我们该如何配置呢?


ResultLimitAttribute 似乎已被删除。看到这个commit

它被纳入 [Queryable] 属性的一项功能中,现在 OData 支持需要该功能。查看讨论here

现在正确的用法是

[Queryable(ResultLimit = 10)]

[UPDATE]

从 RTM 开始,Queryable 的 ResultLimit 功能已被删除。此外,[Queryable] 已移至其自己的预览包中。看this博客文章以获取更多信息和this发布有关新用法的说明。

[更新 2 11-16-12]随着 ASP.Net 2012 年秋季更新预览的出现,一切都得到了再次更新。 [Queryable] 属性的 ResultLimit 属性已添加回 OData 包。

看文章here一些变化的总结。

Here是更新后的 Nuget 包。截至撰写本文时,它是一个 PREVIEW 包。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ASP.net MVC 4(Web api)OData 配置 的相关文章

随机推荐