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 для включения сохранения уникальных ссылок на объекты при сериализации и потреблении метаданных для чтения сохраненных ссылок на десериализацию.

Применяется к