Json.Net으로 JSON 직렬화 제어
객체 지향 프로그래밍에서 데이터 전송 객체(DTO)를 사용할 때 JSON 직렬화에서 속성을 선택적으로 제외하는 것은 데이터 보안과 효율적인 JSON 페이로드에 매우 중요합니다. Json.Net은 이를 달성하기 위한 유연한 방법을 제공합니다.
한 가지 일반적인 접근 방식은 [JsonIgnore]
속성을 사용하는 것입니다. 공용 속성에 적용되는 이 속성은 코드 내에서 접근성을 유지하면서 직렬화 중에 해당 속성이 포함되는 것을 방지합니다.
[JsonIgnore]
사용 예:
<code class="language-csharp">public class MyClass { public string Property1 { get; set; } [JsonIgnore] public string Property2 { get; set; } }</code>
Property2
은 직렬화된 JSON에서 생략됩니다.
또 다른 방법은 DataContract
의 DataMember
및 System.Runtime.Serialization
속성을 활용하는 것입니다. [DataMember]
표시된 속성만 연재됩니다.
DataContract
및 DataMember
사용 예:
<code class="language-csharp">[DataContract] public class MyClass2 { [DataMember] public string Property1 { get; set; } public string Property2 { get; set; } }</code>
여기서 Property2
은 [DataMember]
속성이 부족하여 제외되었습니다.
포괄적인 세부정보와 고급 시나리오를 보려면 다음 유용한 리소스를 참조하세요. https://www.php.cn/link/d203bbe1b9e242a034b376bafda15a99
위 내용은 Json.Net을 사용하여 JSON 직렬화에서 속성을 제외하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!