try httpresponseexception handling exceptions exceptionfilterattribute error catch web-services xmlreader maxstringcontentlength

web-services - httpresponseexception - web api return error to client



Error al serializar String en la llamada WebService (2)

Esta mañana me encontré con un problema al devolver una cadena de texto como resultado de una llamada al servicio web. el error que recibí está debajo

************** 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 ---

Hice una búsqueda y los resultados están a continuación: Resultados de búsqueda

La mayoría de ellos están relacionados con WCF, pero fueron suficientes para señalarme en la dirección correcta. Voy a publicar respuesta como respuesta.


Prueba esta publicación de blog aquí . Puede modificar la propiedad MaxStringContentLength en la configuración de enlace.


La publicación del blog de Jow Wirtley me indicó la dirección correcta.

Todo lo que tuve que hacer fue actualizar los enlaces en el app.config de la aplicación cliente y todo funciona ahora.