C# 已超出Web服务大小
我使用WCF服务从另一台服务器获取一些文档,在我尝试使用50MB或以上的文档之前,它工作得非常完美 在通过WCF服务发回文件之前,我查看了文件的大小, 服务器上的我的WCF web.config设置为C# 已超出Web服务大小,c#,wcf,C#,Wcf,我使用WCF服务从另一台服务器获取一些文档,在我尝试使用50MB或以上的文档之前,它工作得非常完美 在通过WCF服务发回文件之前,我查看了文件的大小, 服务器上的我的WCF web.config设置为 <bindings> <basicHttpBinding> <binding name="eShare_BasicHttpBinding" maxReceivedMessageSize="104857600"> <security
<bindings>
<basicHttpBinding>
<binding name="eShare_BasicHttpBinding" maxReceivedMessageSize="104857600">
<security mode="Transport">
<transport clientCredentialType="InheritedFromHost" />
</security>
</binding>
</basicHttpBinding>
</bindings>
错误
传入消息65536232的最大消息大小配额已更改
已经超过了。要增加配额,请使用MaxReceivedMessageSize
属性,该属性位于相应的绑定元素上
您是否已使用Fiddler或类似工具查看了在线消息的实际内容长度。与文档大小相比,有些因素会影响消息的大小,例如编码、加密、SOAP信封等。。我想你会发现这样做的开销会使你的实际邮件大小超出限制。@MikeGoodwin我会的,但老实说,我看不出有什么理由会增加13MB的额外文件内容。我同意,这似乎不太可能,但这可能有助于准确地了解引擎盖下发生了什么,因为这很容易做到。我不是因为你说的原因才把这个作为答案的:哦
BasicHttpBinding binding = new BasicHttpBinding( );
binding.MaxReceivedMessageSize = 65536232;
binding.ReaderQuotas.MaxArrayLength = 2147483647;
binding.ReaderQuotas.MaxDepth = 2147483647;
binding.ReaderQuotas.MaxBytesPerRead = 2147483647;