Csharp/C#教程:从块中获取WCF的大列表?分享


从块中获取WCF的大列表?

我正在尝试从WCF服务获取实体列表,我遇到的问题是我们在网络上有一些不良延迟,因此数据需要相当长的时间才能到达我的客户端。 我的想法是找到一种方法来获得前1000个,并在我等待下一个到达时将它们推送到UI。

我想它会像分页一样,但我只是想在WCF层中寻找整个集合而不是从db中一次获取一个页面

干杯

在将消息交给更高级别之前,WCF会完整地查看消息。 因此,您的数据需要完整到达并且通常的WCF合同将无效。

但是,您可以使用WCF进行流式处理 。 这允许有效载荷从流中逐渐读取并传递到更高级别。 为了使其正常工作,您需要:

将更复杂 ,WCF直接开箱即用,但实现了您的需求。

您始终可以将服务界面拆分为两种方法。 例如,而不是:

List GetItems() 

你可以有:

 int GetItemCount() List GetItems(int start, int maxSize) 

这样您就可以手动实现分页。

最后因为我正在使用tcpTransport进行通信,所以我最终使用双工通道来完成我需要的工作。

我所做的只是改变我当前的SearchMethod,它将一个大的列表返回到void。 在这个方法中,我从数据库中获取数据,将其数据块并通过回调操作将其发送到客户端

上述就是C#学习教程:从块中获取WCF的大列表?分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/1034834.html

(0)
上一篇 2022年1月19日
下一篇 2022年1月19日

精彩推荐