.net - 是否可以使用 WCF 服务而不是 WCF 数据服务来实现服务器端分页

标签 .net wcf paging wcf-data-services data-paging

我一直在尝试使用 WCF 并编写了一个 WCF 服务来为网站提供后端。我在实现服务器端分页时遇到了问题,因为我发现的所有示例(例如 http://msdn.microsoft.com/en-us/library/ee358711.aspx )似乎都使用 DataServiceQueryContinuation 和 WCF 数据服务。

虽然我很高兴可以编写一个 WCF 数据服务来返回数据,但使用一个 WCF 服务来处理登录和更新用户信息等事情,然后使用一个单独的 WCF 数据服务来处理更大的查询/报告,似乎会更加复杂。

这是否是标准做法,或者是否存在通过 WCF 服务的方法调用来分页数据的内置机制?

编辑

我找到了几种可能的方法来执行此操作,其中一个简单的方法涉及 Linq 的 skiptake 运算符:Implementing pager through WCF service 还有一个更复杂的方法: Best practice for WCF service with large amounts of data?

我曾想过可能有一种方法可以使用 WCF 服务来分页数据,就像使用 WCF 数据服务一样:http://msdn.microsoft.com/en-us/library/ee474245.aspx

有人知道这是否可行吗?

最佳答案

我们使用 WCF 服务进行与后端服务器的所有通信,并且通过仅将简单的 PaginDTO 传递到具有 PageSize 和 CurrentPageIndex 等属性的方法调用来实现分页。

结果是一个 PagedDTO,其中包含项目列表和有关页面总数的信息。

我们为数据库使用 Entity Framework ,并且通过 Skip/Take 实现起来非常简单。

希望这有帮助:)

关于.net - 是否可以使用 WCF 服务而不是 WCF 数据服务来实现服务器端分页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7795169/

相关文章:

c# - 不区分大小写的列表

java - 当服务器 Web 服务关闭时,.Net Web 服务客户端需要很长时间才能调用失败

.net - msbuild 和文件版本更改

c# - 多表 CRUD 中的 WCF 错误

sorting - 在分页网格 extjs 4 中对整个商店进行排序

sql - 在 webmatrix/razor 中结合分页和细化

c# - 如何获取方法中使用的内部变量的名称

c# - 通过 WCF 进行站点到站点数据同步

wcf - 通过 .net 中的 Web 服务调用批处理

c - 获取 : "unable to handle kernel paging request" when trying to read