簡體   English   中英

使用WCF數據服務進行分頁

[英]Paging with WCF data service

我的問題是關於如何使用WCF數據服務處理分頁。 我要使用它的方式是執行一個查詢(傳遞頁面大小和當前頁面),並獲取該查詢的結果以及分頁信息,例如總頁數,當前頁數和頁面大小。 客戶端使用此分頁信息(這是另一種將結果轉換為JSON的服務,以供使用它的移動應用程序使用)處理下一個/上一個按鈕。

但是,在WCF數據服務上使用LINQ太有限了,它不支持我需要的LINQ表達式。

我嘗試在WCF 數據服務中創建服務操作,但是我只能返回數據實體的IQueryable集合,因此無法返回還包含分頁信息的自定義實體。

有沒有一種方法可以實現WCF數據服務的分頁,以便在結果旁邊我還可以獲取分頁信息?

編輯:由於WCF數據服務的限制,我切換到普通的WCF服務。 老實說,我不明白為什么有人會使用具有這些嚴格限制的數據服務!

不幸的是,似乎WCF數據服務太有限了,對我來說,解決方案是切換到常規WCF服務,以便我可以使用完整的LINQ並自己定義數據協定。

這里這里看看WCF數據服務的分頁提供程序

使用“ SkipTake來執行來自WCF數據服務的客戶端數據頁面調度,例如:

var items = (from i in ctx.MyEntities
             select i).Skip(StartIndex).Take(PageSize)

其中StartIndex是要返回的數據的開始位置, PageSize是要返回的最大元素數。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM