【发布时间】:2009-08-21 16:04:17
【问题描述】:
我需要通过 WCF 服务传输大型 Excel 文件。我们的项目需要为客户生成一些报告,我们使用 Excel 来生成报告。
目前该项目使用 net.tcp 绑定,但我们正在考虑切换到 http 绑定。
我在 SO 上阅读了另一篇关于传输大图像的帖子,所有答案都建议使用流式传输。但是我想知道最好的方法是考虑它的 Excel 文件。文件大小有时会接近 10Mb。
【问题讨论】:
标签: wcf
我需要通过 WCF 服务传输大型 Excel 文件。我们的项目需要为客户生成一些报告,我们使用 Excel 来生成报告。
目前该项目使用 net.tcp 绑定,但我们正在考虑切换到 http 绑定。
我在 SO 上阅读了另一篇关于传输大图像的帖子,所有答案都建议使用流式传输。但是我想知道最好的方法是考虑它的 Excel 文件。文件大小有时会接近 10Mb。
【问题讨论】:
标签: wcf
是的,streaming 可以使用 TCP 或 HTTP——你应该使用它。使用流式传输将消除一次保存整个文件的大型内存缓冲区的需要。这将提高您的应用程序的可扩展性。
【讨论】:
正如 JP 所说,流媒体是一个不错的选择 - 我通常会建议这样做。 《Essential Windows Communication Foundation》一书建议,如果您需要可靠的消息传递、数字签名或故障后恢复,那么另一种选择是将数据手动分块成更小的消息,然后在服务器上重新组合它们。
【讨论】: