Åtgärd: Serialisering av kontrolltecken med DataContractJsonSerializer
Från och med .NET Framework 4.7 har sättet som kontrolltecken serialiseras med ändrats för att överensstämma med DataContractJsonSerializer ECMAScript V6 och V8.
Påverkan
I .NET Framework 4.6.2 och tidigare versioner DataContractJsonSerializer serialiserar inte vissa specialkontrolltecken, till exempel \b
, \f
och \t
, på ett sätt som var kompatibelt med ECMAScript V6- och V8-standarderna.
För appar som är målversioner av .NET Framework från och med .NET Framework 4.7 är serialiseringen av dessa kontrolltecken kompatibel med ECMAScript V6 och V8. Följande API:er påverkas:
Åtgärd
För appar som är målversioner av .NET Framework från och med .NET Framework 4.7 är det här beteendet aktiverat som standard.
Om det här beteendet inte är önskvärt kan du välja bort den här funktionen genom att lägga till följande rad i <runtime>
avsnittet i filen app.config eller web.config:
<runtime>
<AppContextSwitchOverrides value="Switch.System.Runtime.Serialization.DoNotUseECMAScriptV6EscapeControlCharacter=false" />
</runtime>