gpt4 book ai didi

wcf - 将 FileStream 传递给 WCF 会引发 "Timeouts are not supported on this stream"异常

转载 作者:行者123 更新时间:2023-12-04 13:53:36 25 4
gpt4 key购买 nike

当尝试将一个小的 FileStream 传递给我的 WCF 服务时,我收到“此流不支持超时”错误。谁能看到我做错了什么?

界面:

[OperationContract]
List<SystemClass> ReadExcelFile(System.IO.FileStream stream);

网络配置
<bindings>
<basicHttpBinding>
<binding name="streaming" maxReceivedMessageSize="2147483647" transferMode="Streamed">
</binding>
</basicHttpBinding>
</bindings>

<services>
<service name="MISDashboard.wcfService" behaviorConfiguration="">
<endpoint address="" binding="basicHttpBinding" bindingConfiguration="streaming" contract="MISDashboard.wcfService"></endpoint>
</service>
</services>
...
<httpRuntime maxRequestLength="2147483647"/>

最佳答案

不要使用 FileStream作为参数,但 Stream .一个 FileStream是绑定(bind)到本地文件系统的流;一旦您开始传输数据,另一端的流将来自网络,因此不能在那里使用 FileStream。

你可以相信它几乎是一样的,但是 Stream WCF 以特殊方式处理并绕过许多内部任务。

此外,对于发送大数据,请考虑阅读 this great article .

关于wcf - 将 FileStream 传递给 WCF 会引发 "Timeouts are not supported on this stream"异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17436132/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com