データコントラクトの一部としてバイト配列を受け入れる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はこれを無視しているようです - どのように私はこれを停止して大きなメッセージを許可しません?