【发布时间】:2010-10-18 23:46:54
【问题描述】:
我正在开发一个包含 WCF 服务及其 ASP.NET MVC 客户端的应用程序。 ASP.NET MVC 网站必须显示一个对象网格——比如产品。这些产品存储在可通过 WCF 服务访问的数据库中。因此,在 MVC 控制器的某个地方,我调用了 WCF 服务的方法,该方法返回了我需要显示的产品数组。
那么我的问题是什么?我想为我的产品网格实现一个寻呼机功能,因为可能会有很多产品。所以有几种方法可以做到这一点:
- 我的控制器可以获取整个产品列表,并且只进行内存分页
- WCF 可以选择所有产品并将它们存储在其缓存中的某个位置,然后根据请求的页码仅将其中的一部分传递给控制器。
- WCF 只能根据请求的页码从数据库中选择部分产品。
- WCF 可以将 IQueryable 返回给控制器,然后控制器会随时选择他想要的任何内容。
据我了解(如果不正确,请纠正我),第一个选项没有用,所以我必须在其他选项中进行选择。
第二个选项浪费了我服务器的内存。
第三个选项还可以,但是在WCF端实现分页似乎有点难看。
第四个选项听起来令人困惑。我实际上将某种查询传递给客户端,然后他自己通过 WCF 服务查询我的数据库。我不知道如何正确实施。
那么您能帮我选择正确的实现方式吗?
【问题讨论】:
标签: asp.net-mvc wcf web-services