<label id="omcfq"></label>

      <rp id="omcfq"><acronym id="omcfq"></acronym></rp>


        广州电脑培训暨华官网
        广州电脑培训
        • 广东省软件工程师实训基地
        • 广东省高薪就业培训中心

        • 广东省网络工程师实训基地
        • 广东省电脑人才培训中心

        您现在的位置:所在位置: 广州电脑培训 >> 电脑技术 >> net >> 正文    >

        AspNet.WebAPI.OData.ODataPQ
          

          AspNet.WebAPI.OData.ODataPQ

          这是针对 Asp.net WebAPI OData 协议下,查询分页。或者是说 本人在使用Asp.Net webAPI 做服务接口时写的一个分页查询服务支持的扩展库。

          它支持 MS Asp.Net WebAPI OData 协议下获取记录总数进行分页操作。

          其实,分页真的简单,简单得不能再简单了。分页总数,每页大小。就够了,但是怎么都找不到 Asp.Net WebAPI OData 协议下获取总记录数的例子

          或者找到例子,按照做了N遍,就是不行,总数就是不给我返回来。

          对于获取记录总数 查阅了一些资料、比如 $inlinecount=allpages ,$count=true,经历了很长时间的折腾。

          要么就是 告诉我:不支持 $inlinecount查询参数,或者就是 不支持 $count 查询参数。弄得我很是不舒服。多么好的OData,获取一个记录总数都那么难~~~(吐槽下,O(∩_∩)O~)。

          在开始使用它之前,先允许我对 AspNet.WebAPI.OData.ODataPQ 啰嗦几句。

          AspNet.WebAPI.OData.ODataPQ,是在Nuget.org的包名称,也就是 ID,识别码,在使用的时候可以通过 ” 包控制台命令窗口" 安装、

          PM -> Install-package AspNet.WebAPI.OData.ODataPQ [-Version 5.2.2.1]

          扩展库名实际是 ODataPQ.dll 这样一个文件。

          目前在 nuget 有2个版本。分别是(5.x ,4.x),具体情况见下面

          5.2.2.1:最新版本(lasted version,有publicTokenKey)

          5.2.2.0:最新版本(lasted version,无publicTokenKey)

          这两个版本,就是差一个 publicTokenKey ,建议用 5.2.2.1 这个版本。

          如果你的WebAPI项目中的。Microsoft.AspNet.WebApi.OData,也就是引用中的 System.Web.Http.OData 程序集的版本。

          是 5.2.2.0 及以上,建议使用这两个版本中的其中一个,不要使用下面4.X版本的库

          ------------------------------------------------------------------------------------------------------------------------------------------

          4.0.30507:(for 程序集 System.Web.Http.OData 4.0.30506版本 有publicTokenKey )

          4.0.30506:(for 程序集 System.Web.Http.OData 4.0.30506版本 无publicTokenKey )

          这两个版本,就是差一个 publicTokenKey ,建议用 4.0.30507 这个版本。

          如果你的WebAPI项目中的 Microsoft.AspNet.WebApi.OData,也就是引用中的 System.Web.Http.OData 程序集的版本。

          是 4.0.30506 及以上,建议使用这两个版本中的其中一个,不要使用上面5.X版本的库

          -----------------------------------------------------------------------------------------------------------------------------------------

          好,啰嗦完了后,下面开始用它来实现最简单的服务(分页查询,\(^o^)/~)

          第一步:

          创建Asp.Net WebAPI项目,这就不多啰嗦了(。net4.0,.net4.5都可以)

          第二步:

          确认你的 System.Web.Http.OData 程序集的版本,如果是 4.0.30506 ,安装 ODataPQ 4.0.30507/4.0.30506

          “ 程序包管理控制台 ” :PM -> Install-Package AspNet.WebAPI.OData.ODataPQ -Version 4.0.30507

          如果 System.Web.Http.OData 是 5.2.2.0及以上 ,安装 ODataPQ 5.2.2.1/5.2.2.0

          “ 程序包管理控制台 ” :PM -> Install-Package AspNet.WebAPI.OData.ODataPQ [-Version 5.2.2.1]

          第三步:

          新建一个控制器,叫 ODataPQController,继承自 ApiController 。加一个 Get action方法,在方法上标记一下

          OData.ODataPageResult。然后返回 IQueryable 对象。效果图如下。

          

          经过以上的配置,ODataPQ的nuget包安装以及服务器端代码编写就算完成。

          第四步:

          查询参数看看客户端的效果。(查询参数 $filter,$top,$skip等等与OData协议一致。返回的数据中,包括了Data,total字段。这就是我们分页要的东西。总数。)

          




      1. 上一篇电脑技术:
      2. 下一篇电脑技术:

      3. 幸运时时彩 抚远县 | 安西县 | 塔城市 | 铜梁县 | 德庆县 | 平江县 | 凤山县 | 连山 | 大同县 | 琼海市 | 华池县 | 邢台市 | 抚顺县 | 许昌市 | 三门峡市 | 微博 | 泽库县 | 山西省 | 格尔木市 | 晋江市 | 寿宁县 | 瓦房店市 | 定陶县 | 岚皋县 | 临猗县 | 郑州市 | 贵阳市 | 大埔区 | 灵丘县 | 鸡泽县 | 定西市 | 宜城市 | 盐津县 | 宝山区 | 新和县 | 图们市 | 山阳县 | 新闻 | 双峰县 | 格尔木市 | 禄丰县 | 汝州市 | 翁牛特旗 | 康乐县 | 永吉县 | 太白县 | 五常市 | 来宾市 | 台东县 | 扎兰屯市 | 呼玛县 | 凉城县 | 刚察县 | 雷波县 | 佛山市 | 灵璧县 | 乌兰浩特市 | 张家川 | 松江区 | 五家渠市 | 曲阜市 | 娄烦县 | 阿尔山市 | 霞浦县 | 滕州市 | 贞丰县 | 资源县 | 濮阳县 | 新巴尔虎右旗 | 大余县 | 色达县 | 大洼县 | 马山县 | 麻阳 | 博白县 | 石棉县 | 波密县 | 普定县 | 岗巴县 | 金阳县 | 岳西县 | 冀州市 | 梅州市 | 黔南 | 平定县 | 图们市 | 襄城县 | 高陵县 | 库尔勒市 | 康定县 | 奉新县 | 光泽县 | 天气 | 夏邑县 | 清苑县 | 丰顺县 | 黄龙县 | 甘泉县 | 阿拉善盟 | 囊谦县 |