我有WCF服务。约。每月一次将大型XML转储上传到此服务。我还不知道,文件有多大(可能非常大)。
当我想读取收到的数据时,我收到了CommunicationException
{“传入邮件的最大邮件大小限额(65536)具有 被超过了。要增加配额,请使用MaxReceivedMessageSize 适当的绑定元素上的属性。“}
public void UploadFile(FileUploadMessage request)
{
//...
request.sourceStream.Read(buffer, 0, bufferLen);
}
现在我的约束力:
<bindings>
<basicHttpsBinding>
<binding messageEncoding="Mtom" transferMode="StreamedRequest" >
现在,由于我不知道上传的文件有多大,我可以配置我的绑定来接受任何大小的请求吗?即使我将maxReceivedMessageSize
设置为任何大数字,也可能会有更多的数据。
答案 0 :(得分:0)
通过更改为TCP绑定并允许最多10 GB来修复此问题。
<services>
<service >
<endpoint address="uploadservice" binding="netTcpBinding" contract="UploadService.IUploadService" />
<bindings>
<netTcpBinding>
<binding transferMode="StreamedRequest" maxReceivedMessageSize="10240000000">