次の方法で共有


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

プロパティ値

ReferenceHandler

注釈

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

  • シリアル化時:

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

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

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

適用対象