Partilhar via


Atenuação: Serialização de caracteres de controle com o DataContractJsonSerializer

A partir do .NET Framework 4.7, a maneira como os caracteres de controle são serializados com o DataContractJsonSerializer foi alterada para estar em conformidade com ECMAScript V6 e V8.

Impacto

No .NET Framework 4.6.2 e versões anteriores, o DataContractJsonSerializer não serializou alguns caracteres de controle especiais, como \b, \fe \t, de uma forma compatível com os padrões ECMAScript V6 e V8.

Para aplicativos destinados a versões do .NET Framework a partir do .NET Framework 4.7, a serialização desses caracteres de controle é compatível com ECMAScript V6 e V8. As seguintes APIs são afetadas:

Atenuação

Para aplicativos destinados a versões do .NET Framework a partir do .NET Framework 4.7, esse comportamento é habilitado por padrão.

Se esse comportamento não for desejável, você pode desativar esse recurso adicionando a seguinte linha à seção <runtime> do arquivo app.config ou web.config:

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

Ver também