Json.Net による JSON シリアル化の制御
オブジェクト指向プログラミングでデータ転送オブジェクト (DTO) を使用する場合、JSON シリアル化からプロパティを選択的に除外することは、データのセキュリティと効率的な JSON ペイロードにとって重要です。 Json.Net は、これを実現するための柔軟な方法を提供します。
一般的なアプローチの 1 つは、[JsonIgnore]
属性を使用することです。 この属性はパブリック プロパティに適用され、コード内でのアクセシビリティを維持しながら、シリアル化中にそのプロパティが含まれるのを防ぎます。
[JsonIgnore]
を使用した例:
<code class="language-csharp">public class MyClass { public string Property1 { get; set; } [JsonIgnore] public string Property2 { get; set; } }</code>
Property2
はシリアル化された JSON から省略されます。
もう 1 つの方法では、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 中国語 Web サイトの他の関連記事を参照してください。