JsonObjectCreationHandlingAttribute Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Определяет, как десериализация обрабатывает создание объекта для полей или свойств.
public ref class JsonObjectCreationHandlingAttribute sealed : System::Text::Json::Serialization::JsonAttribute
[System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Field | System.AttributeTargets.Interface | System.AttributeTargets.Property | System.AttributeTargets.Struct, AllowMultiple=false)]
public sealed class JsonObjectCreationHandlingAttribute : System.Text.Json.Serialization.JsonAttribute
[<System.AttributeUsage(System.AttributeTargets.Class | System.AttributeTargets.Field | System.AttributeTargets.Interface | System.AttributeTargets.Property | System.AttributeTargets.Struct, AllowMultiple=false)>]
type JsonObjectCreationHandlingAttribute = class
inherit JsonAttribute
Public NotInheritable Class JsonObjectCreationHandlingAttribute
Inherits JsonAttribute
- Наследование
- Атрибуты
Комментарии
При размещении в поле или свойстве этот атрибут указывает, будет ли элемент заменен или заполнен. Если используются сопоставители по умолчанию, этот атрибут сопоставляется с ObjectCreationHandling.
При размещении в типе с Populateпомощью этого атрибута указывается, что все члены, поддерживающие население, будут заполнены. Если используются сопоставители по умолчанию, этот атрибут сопоставляется с PreferredPropertyObjectCreationHandling.
Атрибут соответствует только предпочитаемым значениям обработки создания свойств при размещении в типе. Например, если JsonObjectCreationHandlingAttribute он Populate помещается в класс и свойство не может быть заполнено, оно будет заменено. Это может быть true , если, например, тип значения не имеет метода задания или свойства имеет тип IEnumerable<T>.
Учитывается только тип свойства. Например, если свойство имеет IEnumerable<T> тип и имеет значение времени выполнения типа List<T>, оно не будет заполнено, так как IEnumerable<T> не может заполняться.
Типы значений требуют установки для поддержки совокупности. В таких случаях десериализация использует копию значения свойства, которая будет назначена методу задания после завершения.
Конструкторы
| Имя | Описание |
|---|---|
| JsonObjectCreationHandlingAttribute(JsonObjectCreationHandling) |
Инициализирует новый экземпляр .JsonObjectCreationHandlingAttribute |
Свойства
| Имя | Описание |
|---|---|
| Handling |
Возвращает конфигурацию, используемую при десериализации элементов. |
| TypeId |
При реализации в производном классе получает уникальный идентификатор для этого Attribute. (Унаследовано от Attribute) |
Методы
| Имя | Описание |
|---|---|
| Equals(Object) |
Возвращает значение, указывающее, равен ли этот экземпляр указанному объекту. (Унаследовано от Attribute) |
| GetHashCode() |
Возвращает хэш-код для этого экземпляра. (Унаследовано от Attribute) |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| IsDefaultAttribute() |
При переопределении в производном классе указывает, является ли значение этого экземпляра значением по умолчанию для производного класса. (Унаследовано от Attribute) |
| Match(Object) |
При переопределении в производном классе возвращает значение, указывающее, равен ли этот экземпляр указанному объекту. (Унаследовано от Attribute) |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |