我使用Asp.net MVC WebAPI支持OData协议进行分页操作的笔记(第一篇)
OData协议、多么牛B的技术、
传统的分页写习惯了,最近项目中,用到了 Asp.net WebAPI 2.0来做数据交互接口、至于为什么要使用WebAPI,我想只要是对OData协议有了解的朋友。只要说到WebAPI都会想到这个,如果你想对它有更多的深入了解。可以移步博客园(张善友大师)的介绍。 URL(http://www.cnblogs.com/shanyou/archive/2010/03/26/1697316.html)
微软 5.5.2.0 的 System.Web.OData.dll、不支持$inlinecount的查询、目前我也尚未找到关于Asp.net WebAPI支持OData协议的分页解决方案(如果有朋友知道,方便的话,请与我分享、十分感谢!)
为此,要做分页查询,我们必须自己来写一个分页查询的程序(Filter)、要支持OData协议,必须要用好微软提供的OData 支持类库、因为只有支持$filter,$orderby的这些操作。我们自己写的分页才会有意义,如果不支持OData协议的这些查询操作。查询帅选等等。那就与传统的数据交互接口一样,就失去了WebAPI支持OData协议的真正意义啦。反正,我用过OData协议一些接口,我是觉得非常的方便,扩展性也很好。应该说WebAPI会是以后的一个很不错的服务接口解决方案、
分页都需要什么?
分页包含几要素:记录总条数,每页数量,总页数,当前页,数据列表。这差不多就是一个分页结果需要包括的5要素吧。其实对于分页来讲,服务端需要返回的数据。就只有两个。
第一:总记录条数。总记录条数,必须要服务器端返回,然后客户端可以通过自己的分页定义,来计算出总分页数,客户端保存自己的当前页码等等。
第二:数据列表。这个必须要服务端返回吧(不述了)。
好,那下面,我们就先做第一件事儿,定义分页对象返回结果对象。是的,正如你想象的一样,非常简单,就两个属性而已。
/// <summary>/// 定义一个分页数据返回对象/// -------------------------------/// Add by hotboy 2015-5-13 11:21:49/// </summary>public class ODataPagedResult{internal ODataPagedResult(object data, int total){this._data = data;this._total = total;}private object _data;/// <summary>/// Get the Data object/// </summary>public object Data{get { return this._data; }private set { this._data = value; }}private int _total;/// <summary>/// Get the total count/// </summary>public int Total{get { return this._total; }private set { this._total = value; }}}
从下一篇开始,我们将一起探讨OData协议的 Asp.net WebAPI具体的分页实现代码。
转载于:https://blog.51cto.com/oceanho/1651240
我使用Asp.net MVC WebAPI支持OData协议进行分页操作的笔记(第一篇)相关推荐
- 我使用Asp.net MVC WebAPI支持OData协议进行分页操作的笔记(第二篇)
在阅读这篇文章的时候,我想你已经看完第一篇文章啦·也有可能跟我一样,现在正在使用它Asp.net WebAPI为我们干活儿.可能是服务分页查询接口,也可能是其它操作,遇到了一些小问题.有问题,那咱就来 ...
- asp.net mvc 正常支持Fckeditor编辑器
在接近下班的时候,快速的浏览了博客园的首页,被该贴"建站专家:让 MVC 支持 CuteEditor Using CuteEditor under MVC"中的话题"As ...
- 【转】.net异步性能测试(包括ASP.NET MVC WebAPI异步方法)
很久没有写博客了,今年做的产品公司这两天刚刚开了发布会,稍微清闲下来,想想我们做的产品还有没有性能优化空间,于是想到了.Net的异步可以优化性能,但到底能够提升多大的比例呢?恰好有一个朋友正在做各种语 ...
- ASP.NET MVC WebAPI 资源整理
注:这是收集给公司同事学习的资料,入门级别的. 使用ASP.Net WebAPI构建REST服务(一)--简单的示例 http://blog.csdn.net/mengzhengjie/article ...
- Asp.Net MVC WebAPI的创建与前台Jquery ajax后台HttpClient调用详解
1.什么是WebApi,它有什么用途? Web API是一个比较宽泛的概念.这里我们提到Web API特指ASP.NET MVC Web API.在新出的MVC中,增加了WebAPI,用于提供REST ...
- 请MVC5 WebApi2 支持OData协议查询
一.配置项 1.WebApiConfig.cs添加如下代码: // api 支持 cors允许Ajax发起跨域的请求(nuget 中搜索 ASP.NET Cross-Origin Support,然后 ...
- ASP.NET MVC WebApi 返回数据类型序列化控制(json,xml)
我们都知道在使用WebApi的时候Controller会自动将Action的返回值自动进行各种序列化处理(序列化为json,xml等),但是如果Controller的自动序列化后的结果不是我们想要的该 ...
- Asp.net MVC WebApi Response AOP_se7en3_新浪博客
WebApi项目需要在输出Json时对Json进行编码处理.考虑使用MVC 的AOP 查阅文档需要HttpMessageHandle 新建类CryptDelegatingHandler public ...
- ASP.NET MVC WebAPI实现文件批量上传
工作中学习,学习中记录~~~~~~ 最下面附上demo 任务需求:需要做一个apI接口让C#的程序调用实现批量文件的上传. 难度: 没有做过通过API上传文件的...之前做过网站前后台上传. 首先当然 ...
最新文章
- python字符串操作
- android系统的iphone,iPhone上安装Android系统详细步骤。
- Kdevelop的简单使用和调试_JunJun~的博客-CSDN博客_kdevelop使用教程
- nodejs+express +jade模板引擎 新建项目
- 【ACM】杭电1141:Factstone Benchmark
- iOS开发UI篇—Quartz2D使用(绘图路径)
- [tp5] thinkPHP5-渲染模板的方式
- Azure Data Explorer(Kusto)学习笔记
- 构建高性能ASP.NET站点 第七章 如何解决内存的问题(后篇)—托管资源优化—监常用优化措施...
- Linux通过Smb与Windows共享目录
- Redis持久化的方式
- 【PAT】1105 Spiral Matrix(柳婼的思想详细解读)
- SVC vs SVR
- 几个例子理解博弈论与纳什均衡
- matlab a律非均匀量化,均匀量化和A律PCM非均匀量化实验.doc
- 炼数成金(dataguru)IT技能修炼
- 2021年彬州范公中学高考成绩查询,彬州市拟奖励81人名单公布!快看有你认识的吗?...
- 【闲】获取视频选集(每集)名字
- 抖音数据分析(基于播放、点赞、投稿、背景音乐)--pyecharts可视化
- 手机开机后Spreadtrum Factory Test phone test factory used full phone test item test BT EUT exit
热门文章
- 计算机系统集成资质认证条件有哪些?
- 类 workbook 的 saveas 方法无效_2021初级会计《经济法基础》知识点:一般计税方法应纳税额的计算...
- 虚幻游戏武器素材推荐
- 【例10.4】从键盘输入10个学生的有关数据,然后把它们转存到磁盘文件上去。
- 连享会-Python爬虫与文本分析专题 (2019.5.17-19)
- 联科教育--国际认证考试授权中心
- 四种方法快速恢复Word初始化默认设置
- 输入show databases; 出现 SyntaxError: Unexpected identifier 错误
- 南瑞服务器在线客服,国电南瑞服务器NSC332远动通讯管理器
- 度量学习(Metric Learning)基础概念