Wsfサービスとクライアントアプリケーションがあります。クライアントとサービスを通信しようとすると、次のメッセージが表示されます。
"メッセージをデシリアライズしようとしたときにフォーマッタが例外をスローしました:パラメータをデシリアライズしようとしたときにエラーが発生しました http://tempuri.org/:blob 。 InnerExceptionメッセージは、「タイプFileBlobのオブジェクトのデシリアライズ中にエラーが発生しました。XMLデータの読み取り中に最大配列長の割り当て(16384)を超えました。XMLの作成時に使用されるXmlDictionaryReaderQuotasオブジェクトのMaxArrayLengthプロパティを変更することにより、この割り当てを増やすことができます。リーダー。行1、位置25931。 '。詳細については、InnerExceptionを参照してください。 "
CustomBinding要素があり、「readerQuotas」セクションを挿入できません。クライアント構成とサービス構成の両方に、次のバインディング要素があります。
<customBinding>
<binding name="LicenseServiceBinding"
closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00">
<security authenticationMode="UserNameOverTransport">
<localClientSettings maxClockSkew="00:07:00" />
<localServiceSettings maxClockSkew="00:07:00" />
</security>
<windowsStreamSecurity />
<httpsTransport maxReceivedMessageSize="2147483646"/>
</binding>
</customBinding>
助けてくれてありがとう:)
実際、私はtextMessageEncodingセクション内にreaderQuotasを追加することで問題を解決しました。助けてくれてありがとう。
<textMessageEncoding messageVersion="Soap11">
<readerQuotas maxDepth="32" maxStringContentLength="5242880" maxArrayLength="2147483646" maxBytesPerRead="4096" maxNameTableCharCount="5242880"/>
</textMessageEncoding>
<readerQuotas>
要素内に<binding>
要素を追加できるはずです。
<customBinding>
<binding name="LicenseServiceBinding"
closeTimeout="00:01:00" openTimeout="00:01:00"
receiveTimeout="00:10:00" sendTimeout="00:01:00">
<security authenticationMode="UserNameOverTransport">
<localClientSettings maxClockSkew="00:07:00" />
<localServiceSettings maxClockSkew="00:07:00" />
</security>
<readerQuotas maxArrayLength="32768" />
<windowsStreamSecurity />
<httpsTransport maxReceivedMessageSize="2147483646"/>
</binding>
</customBinding>
「挿入できません」とのことですが、どのようなエラーメッセージが表示されますか?