Web API 2 学习笔记 - 分页
Web API 2.2 odata v4 -系列的学习笔记,只共我个人参考。如果您不小心看了,发现有错误,请指正我,如果你是想学习,请离开哦 !
参考 : http://www.asp.net/web-api/overview/odata-support-in-aspnet-web-api/supporting-odata-query-options (这个是v3哦)
不 response odata format 的做法是这样的
[Route("")] //[EnableQuery] <--不要放这个! public PageResult<Salesman> Get(ODataQueryOptions<Salesman> options) { //有set分页,才会有NextLink ODataQuerySettings settings = new ODataQuerySettings() { PageSize = 2 }; //因为没有[EnableQuery],所以这里我们要自己来valid一下 ODataValidationSettings vSettings = new ODataValidationSettings() { AllowedQueryOptions = AllowedQueryOptions.Count | AllowedQueryOptions.Filter //support count and filter only }; options.Validate(vSettings); //这里fail会 throw ODataException IQueryable results = options.ApplyTo(db.salesmans, settings); return new PageResult<Salesman>( results as IEnumerable<Salesman>, Request.ODataProperties().NextLink, Request.ODataProperties().TotalCount ); }
Js
var xhr = new XMLHttpRequest(); xhr.open("GET", "//localhost:4931/api/salesmans?$count=true", true); //$count=true 是 odata v4. v3 是$inlinecount=allpages xhr.setRequestHeader("accept", "application/json"); xhr.send(null);
分类:
ASP.NET
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 百万级群聊的设计实践
· 全网最简单!3分钟用满血DeepSeek R1开发一款AI智能客服,零代码轻松接入微信、公众号、小程
· .NET 10 首个预览版发布,跨平台开发与性能全面提升
· 《HelloGitHub》第 107 期
· 从文本到图像:SSE 如何助力 AI 内容实时呈现?(Typescript篇)