我不想阅读整个内容,而是将其放入文件中然后流式传输。我想知道我可以使用 WCF 和 Streaming 以某种方式将数据读取器流式传输到客户端吗?
问问题
290 次
1 回答
0
您可以通过使用 MessageContracts 来实现这一点。
当我第一次尝试自己解决这个问题时,我偶然发现了这篇文章,它真的很有帮助: http: //www.codeproject.com/Articles/166763/WCF-Streaming-Upload-Download-Files-通过 HTTP
这是设置合同的一个非常基本的示例:
[MessageContract]
public class MyFileInfo : IDisposable
{
[MessageHeader(MustUnderstand = true)]
public string FileName;
[MessageHeader(MustUnderstand = true)]
public long Length;
[MessageHeader]
public string FileHash;
[MessageHeader]
public string Status;
[MessageBodyMember]
public Stream FileData;
public void Dispose()
{
if (FileData != null)
{
FileData.Close();
FileData = null;
}
}
}
[MessageContract]
public class FileRequest
{
[MessageHeader]
public string fileName;
}
当我第一次学习 WCF 时,我讨厌默认的应用程序配置文件是多么冗长,所以在一些谷歌搜索/研究之后,我写了一篇博客文章,其中包含关于如何在没有巨大应用程序配置文件的情况下设置 WCF 客户端代理的代码示例:http:/ /justindonohoo.blogspot.com/2012/08/generic-wcf-client-library-code.html
于 2013-02-28T01:04:01.373 回答