4
我有一个WCF服务操作,它接受一个字节数组作为其数据协定的一部分。该服务只暴露在内部(而不是互联网),我想增加配额以允许10MB的字节数组。在IIS 7中托管的WCF服务 - 绑定配置设置被忽略
该服务托管在IIS7中。当我尝试过的默认长度发送一个字节数组,我得到下面的异常消息:
有反序列化类型 MyService.ServiceContracts.Data的对象错误。在读取XML数据时,超出了最大阵列长度配额 (16384)。通过更改在创建XML阅读器时使用的 XmlDictionaryReaderQuotas对象上的MaxArrayLength属性,可以增加此配额 。 1号线,位置22991.
这里的配置:
<system.serviceModel>
<netTcpBinding>
<binding name="largeBinaryBinding" maxReceivedMessageSize="10001000"
maxBufferPoolSize="80008000" maxBufferSize="10001000"
receiveTimeout="00:01:00" openTimeout="00:01:00"
closeTimeout="00:01:00" sendTimeout="00:01:00">
<readerQuotas maxArrayLength="10000000" />
</binding>
</netTcpBinding>
<services>
<service name="MyService">
<endpoint binding="netTcpBinding"
bindingConfiguration="largeBinaryBinding"
bindingNamespace="http://my.services.co.uk/MyService"
contract="Services.MyService.ServiceContracts.IMyService" />
</service>
</services>
</system.serviceModel>
所以我的配置允许更大的消息,但IIS似乎忽略这一点 - 我该如何制止这种和允许通过较大的消息?