>백엔드 개발 >C++ >Json.Net을 사용하여 상위 개체 내에서 사전을 직접 직렬화하려면 어떻게 해야 합니까?

Json.Net을 사용하여 상위 개체 내에서 사전을 직접 직렬화하려면 어떻게 해야 합니까?

Patricia Arquette
Patricia Arquette원래의
2025-01-17 11:22:11546검색

How Can I Serialize Dictionaries Directly Within Parent Objects Using Json.Net?

Json.Net을 사용하여 사전을 상위 개체의 일부로 직렬화

Json.Net에서 원하는 경우 사전을 사용하여 개체를 직렬화하는 것이 어려울 수 있습니다. 사전의 키-값 쌍이 상위 객체의 JSON 표현 내에 직접 표시됩니다. 이를 달성하는 방법은 다음과 같습니다.

[JsonExtensionData] 사용

Json.Net 버전 5.0.5 이상의 경우 [JsonExtensionData] 속성을 활용하는 것이 우아한 솔루션입니다. . 이 속성을 사전 속성에 추가하면 해당 키-값 쌍이 상위 개체의 일부로 직렬화됩니다. 예를 들면 다음과 같습니다.

public class Test
{
    public string X { get; set; }

    [JsonExtensionData]
    public Dictionary<string, object> Y { get; set; }
}

이 접근 방식을 사용하면 사전의 키와 값이 결과 JSON 개체에 포함되어 구조가 효과적으로 평면화됩니다. 또한 직렬화와 역직렬화를 모두 지원하므로 역직렬화 시 일치하지 않는 JSON 속성을 사전에 저장할 수 있습니다.

위 내용은 Json.Net을 사용하여 상위 개체 내에서 사전을 직접 직렬화하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.