UWP应用程序中的WCF流式代理

时间:2017-05-11 12:11:10

标签: c# wcf uwp streaming

我必须编写一个WCF服务来将大文件(500MB - 3GB)传输到UWP客户端。我已将服务配置为流服务,当我在控制台应用程序上生成客户端代理时,该服务非常正常。我的下载方法如下:

public Stream GetFile(GetFileRequest request)

当我在uwp应用程序中生成客户端代理时,GetFile方法的响应变为byte [],看起来下载过程不是流式传输而是传输为一个byte []。

这是该服务的web.config:

 <bindings>
  <basicHttpBinding>
    <binding name="streamedBinding" transferMode="Streamed" closeTimeout="10:00:00" />
  </basicHttpBinding>
</bindings>

即使在拨打电话之前在客户端手动设置绑定

var binding = new System.ServiceModel.BasicHttpBinding()
                {
                    CloseTimeout = TimeSpan.FromMinutes(10),
                    OpenTimeout = TimeSpan.FromMinutes(10),
                    TransferMode = System.ServiceModel.TransferMode.StreamedResponse
                };
它不会改变任何事情。我还在等待客户电话

await client.GetFileAsync(fileRequest)

我错过了什么?

0 个答案:

没有答案