English 中文(简体)
带有 WebApi 的 OData 页数( 美元内线计数 )
原标题:OData pagination with WebApi ( $inlinecount )

我正使用 OData 来绘制从 Web api 调用返回的长长的项目列表。 我可以通过 url 过滤数据, 使用起始和结束索引 。

我的问题是,我怎么知道项目总数?所以我可以在我的手机设备上显示3页中的第1页(20项),该移动设备呼叫网络API。

问题回答

尝试此方法 : < a href=" http://www.strathweb.com/2012/08/supped-odata-inlinecount- with -new-web-api-odata-preview-package/" rel="nofollow" > http://www.strathweb.com/2012/08/supped-odata-inlinecount- with-new-web-api-odata-preview-package/

它使用最新的网络 API OData 软件包。

在最终完成的网络 API OData 软件包发运之前(今年秋天的某个时候,应该在11月左右),当美元线性计数被支持出箱时,这个解决方案可能是最佳的赌注。

您可以在查询中使用 $inlinecount=allpages 来获取结果中所有实体的计数,而没有上方和跳过。 例如 :

< a href=" "http://services.odata.org/OData/OData.svc/Produces?$top=1&skip=1&$inlinecount=allpages" rel= "nofollown noreferrer" >http://services.odata.org/OData.svc/Produces?$top=1&skip=1&$inlinecount=allpages

返回单一产品,但内部数为9(因为实体集中有9种产品)。

http://www.strathweb.com/2012/06/extending-your-asp-net-web-api- respons-with-useful-metadata/"rel="nofollow" 检查您 ASP.

我使用此邮政和样本代码来使用 OData 来获取调格网格并运行。 正如样本中详细描述的那样, 我创建了一个授权处理器, 以捕捉 HttpResponseMessage, 并用包含项目计数的自定义元数据包。 也创建了一个自定义属性“ 自定义查询可查询属性 ”, 以继承默认的可查询属性 。

这听起来可能有点复杂,但实际上执行起来非常简单。大约30分钟后,我得到了一些东西。

希望未来版本的网络API能得到更完整的 OData 支持 。

EDIT: Odata 支持将不会使用 Web API 运输 。 RTM 发布时正在删除可查询的属性 。 在初始重试后, 可以通过单独的 Niget 软件包提供更完整的 OData 支持 。





相关问题
Anyone feel like passing it forward?

I m the only developer in my company, and am getting along well as an autodidact, but I know I m missing out on the education one gets from working with and having code reviewed by more senior devs. ...

How to Add script codes before the </body> tag ASP.NET

Heres the problem, In Masterpage, the google analytics code were pasted before the end of body tag. In ASPX page, I need to generate a script (google addItem tracker) using codebehind ClientScript ...

Transaction handling with TransactionScope

I am implementing Transaction using TransactionScope with the help this MSDN article http://msdn.microsoft.com/en-us/library/system.transactions.transactionscope.aspx I just want to confirm that is ...

System.Web.Mvc.Controller Initialize

i have the following base controller... public class BaseController : Controller { protected override void Initialize(System.Web.Routing.RequestContext requestContext) { if (...

Microsoft.Contracts namespace

For what it is necessary Microsoft.Contracts namespace in asp.net? I mean, in what cases I could write using Microsoft.Contracts;?

Separator line in ASP.NET

I d like to add a simple separator line in an aspx web form. Does anyone know how? It sounds easy enough, but still I can t manage to find how to do it.. 10x!

热门标签