기본적으로 역직렬화하는 JSON 페이로드에 일반 이전 CLR 개체(POCO) 형식에 없는 속성이 포함되어 있으면 그들은 무시됩니다. .NET 8부터 모든 페이로드 속성이 POCO 있어야지정할 수 있습니다. 그렇지 않은 경우, 역직렬화 중에 JsonException 예외가 발생합니다. 다음 세 가지 방법 중 하나로 이 동작을 구성할 수 있습니다.
POCO 형식에 JsonUnmappedMemberHandlingAttribute 특성으로 주석을 추가하고, 매핑되지 않은 멤버를 Skip 또는 Disallow로 지정합니다.
[JsonUnmappedMemberHandling(JsonUnmappedMemberHandling.Disallow)] public class MyPoco { public int Id { get; set; } } JsonSerializer.Deserialize<MyPoco>("""{"Id" : 42, "AnotherId" : -1 }"""); // JsonException : The JSON property 'AnotherId' could not be mapped to any .NET member contained in type 'MyPoco'.JsonSerializerOptions.UnmappedMemberHandling를 Skip 또는 Disallow로 설정합니다.
관련 유형의 JsonTypeInfo 계약을 사용자 지정합니다. (계약 사용자 지정에 대한 자세한 내용은 JSON 계약 사용자 지정을 참조하세요.)
GitHub에서 Microsoft와 공동 작업
이 콘텐츠의 원본은 GitHub에서 찾을 수 있으며, 여기서 문제와 끌어오기 요청을 만들고 검토할 수도 있습니다. 자세한 내용은 참여자 가이드를 참조하세요.
.NET