JsonExtensionDataAttribute Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
При размещении в свойстве типа IDictionary<TKey,TValue>все свойства, у которых нет соответствующего элемента, добавляются в этот словарь во время десериализации и записи во время сериализации.
public ref class JsonExtensionDataAttribute sealed : System::Text::Json::Serialization::JsonAttribute
[System.AttributeUsage(System.AttributeTargets.Field | System.AttributeTargets.Property, AllowMultiple=false)]
public sealed class JsonExtensionDataAttribute : System.Text.Json.Serialization.JsonAttribute
[System.AttributeUsage(System.AttributeTargets.Property, AllowMultiple=false)]
public sealed class JsonExtensionDataAttribute : System.Text.Json.Serialization.JsonAttribute
[<System.AttributeUsage(System.AttributeTargets.Field | System.AttributeTargets.Property, AllowMultiple=false)>]
type JsonExtensionDataAttribute = class
inherit JsonAttribute
[<System.AttributeUsage(System.AttributeTargets.Property, AllowMultiple=false)>]
type JsonExtensionDataAttribute = class
inherit JsonAttribute
Public NotInheritable Class JsonExtensionDataAttribute
Inherits JsonAttribute
- Наследование
- Атрибуты
Комментарии
Значение словаря TKey должно быть и TValue должно быть StringJsonElement или Object.
Во время десериализации при использовании Objectзначение JSON null обрабатывается как null ссылка на объект, а при использовании JsonElementзначение NULL обрабатывается как JsonElement с ValueKind заданным значением JsonValueKind.Null.
Во время сериализации имя свойства данных расширения не включается в JSON; Данные, содержащиеся в данных расширения, сериализуются как свойства объекта JSON.
Если имеется несколько свойств типа с этим атрибутом данных расширения или если свойство не имеет правильного IDictionary<TKey,TValue> типа, InvalidOperationException создается во время первой сериализации или десериализации этого типа.
Дополнительные сведения см. в разделе "Обработка переполнения JSON с помощью System.Text.Json".
Конструкторы
| Имя | Описание |
|---|---|
| JsonExtensionDataAttribute() |
Инициализирует новый экземпляр класса JsonExtensionDataAttribute. |
Свойства
| Имя | Описание |
|---|---|
| TypeId |
При реализации в производном классе получает уникальный идентификатор для этого Attribute. (Унаследовано от Attribute) |
Методы
| Имя | Описание |
|---|---|
| Equals(Object) |
Возвращает значение, указывающее, равен ли этот экземпляр указанному объекту. (Унаследовано от Attribute) |
| GetHashCode() |
Возвращает хэш-код для этого экземпляра. (Унаследовано от Attribute) |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| IsDefaultAttribute() |
При переопределении в производном классе указывает, является ли значение этого экземпляра значением по умолчанию для производного класса. (Унаследовано от Attribute) |
| Match(Object) |
При переопределении в производном классе возвращает значение, указывающее, равен ли этот экземпляр указанному объекту. (Унаследовано от Attribute) |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |