微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 下载大文件的Asmx Web服务

使用Web服务下载大文件(大约400mb)时遇到问题.
今天我们有一个asmx web服务(使用soap协议)来获取这个文件(返回一个byte [])和一个使用这个web服务引用的 windows服务来下载文件.如果文件大小很大,它会消耗大量的RAM MEMORY(几乎所有可用的计算机内存).
我想知道什么是更好的方式来下载 Windows服务的文件,而不消耗大量的内存.

解决方法

根据您的文件,您可以通过内置压缩获得非常好的结果,以减小文件大小,从而减少您的问题.检查SoapHttpClientProtocol类的EnableDecompression属性,该类可以在客户端上进行子类化并使用IIS提供的压缩功能.这种方法可以消除对任何其他修改的需要.几百兆不应该是一个大问题,或者你的应用消耗更多?

编辑:在仔细阅读您的问题后,我发现您正在寻找一种完全相同的文件方式.在这种情况下,它可能是通过http / ftp公开文件并让你的Windows服务使用WebClient类下载它的最简单的方法

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐