<xmlSerializer> (Elemento)<xmlSerializer> Element

Especifica si se hace una comprobación adicional de progreso de XmlSerializer.Specifies whether an additional check of progress of the XmlSerializer is done.

<configuration>
<system.xml.serialization>

SintaxisSyntax

<xmlSerializer checkDeserializerAdvance = "true|false" />  

Atributos y elementosAttributes and Elements

En las siguientes secciones se describen los atributos, los elementos secundarios y los elementos primarios.The following sections describe attributes, child elements, and parent elements.

AtributosAttributes

AtributoAttribute DescripciónDescription
checkDeserializeAdvancescheckDeserializeAdvances Especifica si se comprueba el progreso de XmlSerializer.Specifies whether the progress of the XmlSerializer is checked. Establezca el atributo a "verdadero" o "falso."Set the attribute to "true" or "false". El valor predeterminado es "true".The default is "true".
useLegacySerializationGenerationuseLegacySerializationGeneration Especifica si XmlSerializer usa generación de serialización heredada, que genera ensamblados escribiendo código de C# en un archivo y después compilándolo en un ensamblado.Specifies whether the XmlSerializer uses legacy serialization generation which generates assemblies by writing C# code to a file and then compiling it to an assembly. El valor predeterminado es false.The default is false.

Elementos secundariosChild Elements

Ninguno.None.

Elementos primariosParent Elements

ElementoElement DescripciónDescription
Elemento <system.xml.serialization><system.xml.serialization> Element Contiene la configuración para XmlSerializer y las clases XmlSchemaImporter.Contains configuration settings for the XmlSerializer and XmlSchemaImporter classes.

ComentariosRemarks

De forma predeterminada, XmlSerializer proporciona una capa adicional de seguridad contra los ataques por denegación de servicio potenciales al deserializar datos que no son de confianza.By default, the XmlSerializer provides an additional layer of security against potential denial of service attacks when deserializing untrusted data. Actúa de esta modo intentando detectar los bucles sin fin durante la deserialización.It does so by attempting to detect infinite loops during deserialization. Si se detecta este tipo de condición, se inicia una excepción con el siguiente mensaje: "Error interno: la deserialización no ha podido avanzar sobre la secuencia subyacente".If such a condition is detected, an exception is thrown with the following message: "Internal error: deserialization failed to advance over underlying stream."

Recibir este mensaje necesariamente no indica que un ataque por denegación de servicio está en curso.Receiving this message does not necessarily indicate that a denial of service attack is in progress. En algunas circunstancias raras, el mecanismo de detección de bucle sin fin genera un positivo falso y la excepción se producirá para un mensaje entrante legítimo.In some rare circumstances, the infinite loop detection mechanism produces a false positive and the exception is thrown for a legitimate incoming message. Si detecta que en la aplicación concreta esta capa adicional de protección está rechazando los mensajes legítimos, establezca el atributo checkDeserializeAdvances en "false".If you find that in your particular application legitimate messages are being rejected by this extra layer of protection, set checkDeserializeAdvances attribute to "false".

EjemploExample

En el ejemplo de código siguiente se establece el atributo checkDeserializeAdvances en "false".The following code example sets the checkDeserializeAdvances attribute to "false".

<configuration>  
  <system.xml.serialization>  
    <xmlSerializer checkDeserializeAdvances="false" />  
  </system.xml.serialization>  
</configuration>  

Vea tambiénSee also