如何在WCF中实现流媒体?
我在使用WCF获取大量数据时遇到了这个问题,因此我不想增加“maxReceivedMessageSize=”65536”。因此,有什么替代方法,或者我可以使用流媒体实现这一点。如果是,那么如何实现如何在WCF中实现流媒体?,wcf,stream,Wcf,Stream,我在使用WCF获取大量数据时遇到了这个问题,因此我不想增加“maxReceivedMessageSize=”65536”。因此,有什么替代方法,或者我可以使用流媒体实现这一点。如果是,那么如何实现 请注意。 < P>是的,您可以在WCF中流数据,但是WCF在流模式下工作时有一些限制。因此,如果您不介意自己处理它,那么您可能需要考虑实现一种返回数据块并多次调用它的方法。 否则,您可以在如下配置中启用流模式 <basicHttpBinding> <binding name="H
请注意。
< P>是的,您可以在WCF中流数据,但是WCF在流模式下工作时有一些限制。因此,如果您不介意自己处理它,那么您可能需要考虑实现一种返回数据块并多次调用它的方法。 否则,您可以在如下配置中启用流模式<basicHttpBinding>
<binding name="HttpStreaming" maxReceivedMessageSize="67108864"
transferMode="Streamed"/>
</basicHttpBinding>
<!-- an example customBinding using Http and streaming-->
<customBinding>
<binding name="Soap12">
<textMessageEncoding messageVersion="Soap12WSAddressing10" />
<httpTransport transferMode="Streamed" maxReceivedMessageSize="67108864"/>
</binding>
</customBinding>
如果在传输文件时,您的数据处于类似于的流中。您只需打开流并返回它。否则,您可以使用MemoryStream
和DataContractSerializer
来访问
有关详细信息,请查看和
虽然这听起来很简单,但对于流模式来说,有一些复杂和局限性。如果你只需要一个简单的方法来绕过一个大对象传输的大小限制,考虑将对象部分地发送到多个调用上。 THAX作为回答,我的确切问题是,我正在从WCF服务中获取大数据,所以我得到了Maxrequest。服务器代码中的.cs文件出现错误,页面上不会显示任何内容。能否将数据拆分为较小的大小,并通过单独调用下载每个部分?
interface IRemoteFileService
{
Stream OpenFile(string serverPath);
}