Entschärfung: Serialisierung von Steuerzeichen mit dem DataContractJsonSerializer

Für Apps von .NET Framework 4.7 an hat sich die Serialisierung von Steuerzeichen mit dem DataContractJsonSerializer geändert und entspricht nun ECMAScript V6 und V8.

Auswirkungen

In .NET Framework 4.6.2 und früheren Versionen serialisierte der DataContractJsonSerializer einige besondere Steuerzeichen, wie etwa \b, \f und \t nicht in einer Weise, die mit den ECMAScript V6- und V8-Standards kompatibel ist.

Für Apps mit Zielversionen von .NET Framework ab .NET Framework 4.7 ist die Serialisierung dieser Steuerzeichen mit ECMAScript V6 und V8 kompatibel. Dies betrifft die folgenden APIs:

Problemumgehung

Für Apps mit Zielversionen von .NET Framework ab .NET Framework 4.7 ist dieses Verhalten standardmäßig aktiviert.

Wenn dieses Verhalten unerwünscht ist, können Sie sich gegen diese Funktion entscheiden, indem Sie dem Abschnitt <runtime> der app.config- oder web.config-Datei die folgende Zeile hinzufügen:

<runtime>
   <AppContextSwitchOverrides value="Switch.System.Runtime.Serialization.DoNotUseECMAScriptV6EscapeControlCharacter=false" />
</runtime>

Siehe auch

Änderungen der Neuzuweisungen in .NET Framework 4.7