JsonSerializerOptions.ReferenceHandler プロパティ

定義

JSON の読み取りと書き込み時のオブジェクト参照の処理方法を指定するオブジェクトを取得または設定します。

public:
 property System::Text::Json::Serialization::ReferenceHandler ^ ReferenceHandler { System::Text::Json::Serialization::ReferenceHandler ^ get(); void set(System::Text::Json::Serialization::ReferenceHandler ^ value); };
public System.Text.Json.Serialization.ReferenceHandler? ReferenceHandler { get; set; }
member this.ReferenceHandler : System.Text.Json.Serialization.ReferenceHandler with get, set
Public Property ReferenceHandler As ReferenceHandler

プロパティ値

注釈

既定では、シリアル化ではサイクルを持つオブジェクトはサポートされず、重複する参照は保持されません。 メタデータ プロパティは、参照型をシリアル化するときに書き込まれず、逆シリアル化時に通常のプロパティとして扱われます。

  • シリアル化時:

    • 重複するオブジェクト参照を一意であるかのように扱い、すべてのプロパティを書き込みます。
    • シリアライザーは、オブジェクトにサイクルが含まれている場合に JsonException をスローします。
  • 逆シリアル化時:

    • メタデータ プロパティ ($id$values、および $ref) は使用されないため、通常の JSON プロパティとして扱われます。
    • メタデータ プロパティは、プロパティ名が一致する場合は返されるオブジェクトの実際のプロパティにマップできます。存在する場合は、 JsonExtensionDataAttribute オーバーフロー ディクショナリに追加されます。それ以外の場合は無視されます。

Preserveを使用して、シリアル化で一意のオブジェクト参照を保持し、メタデータを使用して逆シリアル化時に保持された参照を読み取ります。

適用対象