2008-09-15 49 views
14

今天早上我遇到了一個問題,返回一個文本字符串作爲Web Service調用的結果。我得到的錯誤是低於錯誤序列化WebService中的字符串調用

************** Exception Text ************** 
System.ServiceModel.CommunicationException: Error in deserializing body of reply message for operation 'GetFilingTreeXML'. ---> System.InvalidOperationException: There is an error in XML document (1, 9201). ---> System.Xml.XmlException: The maximum string content length quota (8192) has been exceeded while reading XML data. This quota may be increased by changing the MaxStringContentLength property on the XmlDictionaryReaderQuotas object used when creating the XML reader. Line 1, position 9201. 
at System.Xml.XmlExceptionHelper.ThrowXmlException(XmlDictionaryReader reader, String res, String arg1, String arg2, String arg3) 
at System.Xml.XmlExceptionHelper.ThrowMaxStringContentLengthExceeded(XmlDictionaryReader reader, Int32 maxStringContentLength) 
at System.Xml.XmlDictionaryReader.ReadString(Int32 maxStringContentLength) 
at System.Xml.XmlDictionaryReader.ReadString() 
at System.Xml.XmlBaseReader.ReadElementString() 
at Microsoft.Xml.Serialization.GeneratedAssembly.XmlSerializationReaderImageServerClientInterfaceSoap.Read10_GetFilingTreeXMLResponse() 
at Microsoft.Xml.Serialization.GeneratedAssembly.ArrayOfObjectSerializer9.Deserialize(XmlSerializationReader reader) 
at System.Xml.Serialization.XmlSerializer.Deserialize(XmlReader xmlReader, String encodingStyle, XmlDeserializationEvents events) 
--- End of inner exception stack trace --- 
at System.Xml.Serialization.XmlSerializer.Deserialize(XmlReader xmlReader, String encodingStyle, XmlDeserializationEvents events) 
at System.Xml.Serialization.XmlSerializer.Deserialize(XmlReader xmlReader, String encodingStyle) 
at System.ServiceModel.Dispatcher.XmlSerializerOperationFormatter.DeserializeBody(XmlDictionaryReader reader, MessageVersion version, XmlSerializer serializer, MessagePartDescription returnPart, MessagePartDescriptionCollection bodyParts, Object[] parameters, Boolean isRequest) 
--- End of inner exception stack trace --- 

我做了搜索,結果如下: Search Results

其中大多數是WCF相關,但足以點我在正確的方向。我將回復作爲答覆。

+0

re:你的旗幟;它比那更復雜。請在[meta]上詢問。 – Will 2011-08-08 11:47:10

+0

對不起,很明顯:你能檢查你從web服務返回的字符串是否超過8192字節? – Espo 2008-09-15 18:38:19

回答

29

試試這篇博客文章here。您可以修改綁定配置中的MaxStringContentLength屬性。

6

Jow Wirtley's blog post指出我在正確的方向。

我所要做的就是更新客戶端應用程序的app.config中的綁定,並且它現在都可以工作。