<xmlSerializer> Element

Anger om en ytterligare kontroll av XmlSerializer förloppet görs.

<configuration> <system.xml.serialization>

Syntax

<xmlSerializer checkDeserializerAdvance = "true|false" />

Attribut och element

I följande avsnitt beskrivs attribut, underordnade element och överordnade element.

Attributes

Attribute Description
checkDeserializeAdvances Anger om förloppet för XmlSerializer är markerat. Ange attributet till "true" eller "false". Standardvärdet är "true".
useLegacySerializationGeneration Anger om den XmlSerializer använder äldre serialiseringsgenerering som genererar sammansättningar genom att skriva C#-kod till en fil och sedan kompilera den till en sammansättning. Standardvärdet är falskt.

Underordnade element

Ingen.

Överordnade element

Komponent Description
<system.xml.serialiseringselement> Innehåller konfigurationsinställningar för klasserna XmlSerializer och XmlSchemaImporter .

Anmärkningar

Som standard XmlSerializer ger ytterligare ett säkerhetslager mot potentiella överbelastningsattacker vid deserialisering av ej betrodda data. Det gör den genom att försöka identifiera oändliga loopar under deserialisering. Om ett sådant villkor identifieras utlöses ett undantag med följande meddelande: "Internt fel: deserialisering kunde inte avancera över underliggande dataström."

Att ta emot det här meddelandet indikerar inte nödvändigtvis att en överbelastningsattack pågår. I vissa sällsynta fall ger mekanismen för oändlig loopidentifiering en falsk positiv identifiering och undantaget genereras för ett legitimt inkommande meddelande. Om du upptäcker att legitima meddelanden i ditt program avvisas av det här extra skyddsskiktet anger du attributet checkDeserializeAdvances till "false".

Example

I följande kodexempel anges attributet checkDeserializeAdvances till "false".

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

Se även