我有一個WCF Web服務,它當前正在接受字符串的JSON對象,其中一個鍵/值對包含圖像二進制數據的Base 64編碼字符串。WCF服務錯誤反序列化對象
當Web服務接收它引發以下錯誤請求:
The exception message is 'There was an error deserializing the object of type. The maximum string content length quota (8192) has been exceeded while reading XML data.
我已經按照一些解決方案的其他人建議和我的web.config現在有一個自定義綁定:
<bindings>
<webHttpBinding>
<binding name="LongWebHttpBinding"
maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647">
<readerQuotas maxDepth="32"
maxStringContentLength="2147483647"
maxArrayLength="2147483647"
maxBytesPerRead="2147483647"
maxNameTableCharCount="2147483647" />
</binding>
</webHttpBinding>
</bindings>
與被配置爲端點如下:
<services>
<service name="GenericService">
<endpoint address=""
behaviorConfiguration="jsonBehavior"
binding="webHttpBinding" bindingConfiguration="LongWebHttpBinding"
contract="IGenericService" />
</service>
</services>
根據噸o所有其他建議設置bindingConfiguration
應解決我收到的錯誤消息。
是否有任何進一步的措施可以嘗試解決這個問題?
在您做出上述更改後它仍然無法工作嗎? – Tim
確保'service'元素中的'name'屬性包含帶有名稱空間的類型名稱(如果從非本地程序集引用,則爲全名類型)。否則,您的配置不被使用。 –
@LadislavMrnka - 我從來不知道(雖然我總是使用完整的命名空間)。 – Tim