ホームページ >バックエンド開発 >C++ >Json.Netを使用してJSONシリアル化からプロパティを除外する方法は?

Json.Netを使用してJSONシリアル化からプロパティを除外する方法は?

DDD
DDDオリジナル
2025-01-23 16:34:10259ブラウズ

How to Exclude Properties from JSON Serialization using Json.Net?

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 つの方法では、DataContractDataMember 属性と System.Runtime.Serialization 属性を利用します。 [DataMember] でマークされたプロパティのみがシリアル化されます。

DataContractDataMember を使用した例:

<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 サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。