3

嗨,我需要将块数据从 WCF 服务传递给客户端。我有一个包含 1600 万条记录的表,因此,当客户端从该表请求数据时,我打开该表的数据读取器并序列化并将每条记录发送给客户端,这是我的方法签名..

public AsyncResult FindAsync(AsyncRequest request)

其中 AsyncResult 和 AsyncRequest 是 MessageContract,AsyncResult 中有一个流。问题是当客户端调用metod时我的函数不会返回,直到所有数据都没有写入服务器的流中......是否可以改变这种行为或者我必须使用回调?

4

2 回答 2

2

是的,您可以进行流式传输。查看idesign.net 上的“流式传输”示例。我相信它显示了您想要做的事情的一个例子。

于 2009-05-12T15:49:47.610 回答
2

我在这里找到了很好的解决方案 http://weblogs.asp.net/cibrax/archive/2008/06/10/streaming-large-content-with-wcf-and-deferred-execution.aspx#6288340

于 2009-05-14T06:34:16.113 回答