我正在构建一个 WCF 服务,将文档(Docx/Doc、PDF、Xls)返回到客户端。
在当前实现中,WCF 服务将输出文档作为Stream
客户端返回。
不费吹灰之力,我可以通过将返回的内容复制Stream
到 aFileStream
并将其保存到本地文件系统来在 .Net 客户端应用程序上使用它。而且我还设法构建了一个 Delphi 客户端,它可以使用一个非常简单的 WCF 服务,它将字符串返回给客户端。
但问题是我找不到使用返回Stream
类型的 WCF 服务的方法,因为返回Stream
的实际上是StreamBody
并且我不知道如何将其保存StreamBody
到 Delphi 上的本地文件中。也许在 Delphi 中不可能这样做?
我正在使用 Delphi 2007 和 VS 2010 .Net 4.0 根据SO 中的这个问题,也许使用Stream
根本不是一个好主意。而且我认为对于文档我可以返回bye[]
到客户端,但我仍然喜欢Stream
通过网络而不是 Array 的想法。