我在WCF服务中有一个DataContract。它有一个Array,我在客户端代码中设置该数组。如果我将数组设置为超过1000万,则会抛出错误说BadRequest。 System.ServiceModel.ProtocolException:远程服务器返回意外响应(400)错误请求。
如何克服这个?我想向服务发送更多数据。
答案 0 :(得分:1)
您可以尝试增加邮件允许的大小。您需要将服务和客户端端点都设置为使用绑定配置。
<bindings>
<netTcpBinding>
<binding name="TcpBindingConfiguration" closeTimeout="00:10:00" openTimeout="00:10:00" receiveTimeout="00:10:00" sendTimeout="00:10:00" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647">
<readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" />
</binding>
</netTcpBinding>
</bindings>
如果您尝试发送的数据不符合上述配置允许的消息大小,则需要研究发送较少数据或在多个请求中执行此操作的方法。
您可以查看this question了解相关信息。