繁体   English   中英

c#webservice调用,缓冲区太小(异步?)

[英]c# webservice call, buffer too small (Async?)

我有一个ASP.NET Web API项目,它调用用delphi编写的服务。 这种连接完美地工作,直到我从服务获得的数据流变得太大(delphi服务只是从数据库读取一些数据,因此没有文件在它们之间发送)。

现在,当然我增加了MaxBufferSize,但在某些时候它变得荒谬,现在我正在寻找更复杂的解决方案。 所以我遇到了异步(我在delphi服务中的每个方法也可以作为异步,感谢Microsoft)。 但即使我将我的函数称为异步,当数据流大于设置的缓冲区大小时,我仍然会收到错误(实际上我没有收到错误,执行只是停止在await GetData 。所以,是否有可能我以块的形式处理我从服务中获取的数据?例如,我设置了数据流的最大大小,并且该函数一直在获取,直到我获得所有数据?

谢谢

Async与缓冲区大小或流媒体无关。

那么,是否有可能处理我从服务中获取的数据?

是的,这就是你需要的。 我所知道的所有Web服务API都支持流式传输。 WCF和HttpClient当然可以。 搜索例如“httpclient流响应”应该会让你前进。

根据给出的信息,我不需要Async IO。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM