다음을 통해 공유


완화: DataContractJsonSerializer를 사용하여 컨트롤 문자 직렬화

.NET Framework 4.7부터 컨트롤 문자가 직렬화 DataContractJsonSerializer 되는 방식이 ECMAScript V6 및 V8을 준수하도록 변경되었습니다.

영향

.NET Framework 4.6.2 및 이전 버전 DataContractJsonSerializer 에서는 ECMAScript V6 및 V8 표준과 \b호환되는 방식으로 일부 특수 제어 문자(예: \f\t)를 직렬화하지 않았습니다.

.NET Framework 4.7부터 .NET Framework 버전을 대상으로 하는 앱의 경우 이러한 컨트롤 문자의 serialization은 ECMAScript V6 및 V8과 호환됩니다. 영향을 받는 API는 다음과 같습니다.

완화 방법

.NET Framework 4.7부터 .NET Framework 버전을 대상으로 하는 앱의 경우 이 동작은 기본적으로 사용하도록 설정됩니다.

이 동작이 바람직하지 않은 경우 app.config 또는 web.config 파일의 <runtime> 섹션에 다음 줄을 추가하여 이 기능을 옵트아웃할 수 있습니다.

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

참고하십시오