2011-04-27 20 views
5

Tengo un servicio WCF con enlaces HTTP. Archivo de aplicación MaxDepth = "32". Esto funciona en todas las máquinas excepto en UNA.Problema relacionado con WCF <readerQuotas> maxDepth

Mi pregunta es por qué esto no funciona en esta máquina cuando maxDepth = "32".

Cuando configuro maxDepth = "2147483647", funciona en todas las máquinas.

¡Apreciar tu ayuda!

+1

En el equipo donde maxDepth = "32" doesn No funciona, ¿cuál es el valor de umbral que lo hace funcionar? – JohnC

+0

Gracias, acabo de probar con 2147483647, no lo he intentado con ningún otro valor. ¿Puedes pensar en alguna razón por la cual "32" no funciona? – codematrix

Respuesta

5

El atributo maxDepth se documenta aquí: http://msdn.microsoft.com/en-us/library/ms731325.aspx, y como puede ver, define la cantidad máxima de nodos anidados en la estructura XML.

Supongo que un cliente de la máquina en cuestión produce mensajes SOAP con una estructura profunda, que causa la excepción.

Puede activar el mensaje de WCF rastreo y utilizar el Visor de seguimiento de WCF para inspeccionar los mensajes ofensivos, tal como se describe aquí: http://msdn.microsoft.com/en-us/library/ms733025.aspx y http://msdn.microsoft.com/en-us/library/ms732023.aspx

--larsw

Cuestiones relacionadas