SYSLIB0049: JsonSerializerOptions.AddContext는 사용되지 않습니다.
JsonSerializerOptions.AddContext<TContext>() 메서드는 .NET 8부터 사용되지 않습니다. 코드에서 호출하면 컴파일 시간에 SYSLIB0049
경고가 생성됩니다.
JsonSerializerOptions.AddContext<TContext>() 메서드는 .NET 6에서 JsonSerializerOptions 인스턴스를 지정된 JsonSerializerContext 형식으로 연결하는 수단으로 도입되었습니다. 이 메서드는 계약 사용자 지정 및 TypeInfoResolver 속성이 도입된 .NET 7에서 대개 대체되었습니다.
해결 방법
대신 다음 속성 중 하나를 사용합니다.
- TypeInfoResolver - 이 속성을 통해 하나 또는 여러 확인자를 모두 한 번에 추가할 수 있습니다.
- TypeInfoResolverChain - 이 속성을 통해 여러 호출 사이트에서 확인자를 앞에 또는 뒤에 추가할 수 있습니다. 이것을 체인을 검사하거나 연결에서 구성 요소를 제거할 수도 있습니다.
자세한 내용은 원본 생성기 결합을 참조하세요.
경고 표시 안 함
사용되지 않는 API를 사용해야 하는 경우, 코드 또는 프로젝트 파일에서 경고를 표시하지 않을 수 있습니다.
단일 위반만 표시하지 않으려면 원본 파일에 전처리기 지시문을 추가하여 경고를 사용하지 않도록 설정한 후 다시 사용하도록 설정합니다.
// Disable the warning.
#pragma warning disable SYSLIB0049
// Code that uses obsolete API.
// ...
// Re-enable the warning.
#pragma warning restore SYSLIB0049
프로젝트에서 모든 SYSLIB0049
경고를 표시하지 않으려면 프로젝트 파일에 <NoWarn>
속성을 추가합니다.
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
...
<NoWarn>$(NoWarn);SYSLIB0049</NoWarn>
</PropertyGroup>
</Project>
자세한 내용은 경고 표시 안 함을 참조하세요.
GitHub에서 Microsoft와 공동 작업
이 콘텐츠의 원본은 GitHub에서 찾을 수 있으며, 여기서 문제와 끌어오기 요청을 만들고 검토할 수도 있습니다. 자세한 내용은 참여자 가이드를 참조하세요.
.NET