<xmlSerializer>-Element

Gibt an, ob eine zusätzliche Zustandsüberprüfung für XmlSerializer durchgeführt wird.

<Konfiguration>
<system.xml.serialization>

Syntax

<xmlSerializer checkDeserializerAdvance = "true|false" />  

Attribute und Elemente

In den folgenden Abschnitten werden Attribute sowie untergeordnete und übergeordnete Elemente beschrieben.

Attribute

attribute Beschreibung
checkDeserializeAdvances Gibt an, ob der Zustand von XmlSerializer überprüft wird. Legen Sie das Attribut auf "true" oder "false" fest. Der Standardwert ist "true".
useLegacySerializationGeneration Gibt an, ob XmlSerializer eine Vorgänger-Serialisierungsgenerierung verwendet, die Assemblys generiert, indem C#-Code in eine Datei geschrieben und anschließend in eine Assembly kompiliert wird. Der Standardwert ist FALSE.

Untergeordnete Elemente

Keine

Übergeordnete Elemente

Element BESCHREIBUNG
<system.xml.serialization>-Element Enthält Konfigurationseinstellungen für die XmlSerializer-Klasse und die XmlSchemaImporter-Klasse.

Hinweise

Standardmäßig bietet XmlSerializer eine zusätzliche Sicherheitsebene, um mögliche Denial-of-Service-Angriffe beim Serialisieren nicht vertrauenswürdiger Daten zu verhindern. Hierzu wird während der Deserialisierung versucht, Endlosschleifen zu erkennen. Wenn eine solche Bedingung erkannt wird, wird eine Ausnahme mit der folgenden Meldung ausgelöst: „Interner Fehler: Die Deserialisierung konnte über den zugrunde liegenden Datenstrom hinaus nicht erweitert werden.“

Diese Meldung bedeutet nicht unbedingt, dass gerade ein Denial-of-Service-Angriff ausgeführt wird. In einigen seltenen Fällen erzeugt der Erkennungsmechanismus für Endlosschleifen einen falschen positiven Wert und die Ausnahme wird aufgrund einer zulässigen eingehenden Meldung ausgelöst. Wenn in Ihrer Anwendung zulässige Meldungen durch diese zusätzliche Sicherheitsebene verweigert werden, legen Sie das checkDeserializeAdvances-Attribut auf FALSE fest.

Beispiel

Im folgenden Codebeispiel wird das checkDeserializeAdvances-Attribut auf FALSE festgelegt.

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

Siehe auch