JsonObjectCreationHandlingAttribute Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Determina como a desserialização manipula a criação de objetos para campos ou propriedades.
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
- Herança
- Atributos
Comentários
Quando colocado em um campo ou propriedade, esse atributo indica se o membro será substituído ou preenchido. Quando resolvedores padrão são usados, esse atributo é mapeado para ObjectCreationHandling.
Quando colocado em um tipo com Populate, esse atributo indica que todos os membros que dão suporte à população serão preenchidos. Quando resolvedores padrão são usados, esse atributo é mapeado para PreferredPropertyObjectCreationHandling.
O atributo corresponde somente aos valores preferenciais da manipulação de criação para propriedades quando colocado em um tipo. Por exemplo, quando JsonObjectCreationHandlingAttribute com Populate é colocado em uma classe e uma propriedade não é capaz de ser populada, ela será substituída. Isso pode ser true
se, por exemplo, o tipo de valor não tiver um setter ou a propriedade for do tipo IEnumerable<T>.
Somente o tipo de propriedade é levado em consideração. Por exemplo, se a propriedade for do tipo IEnumerable<T> tiver e tiver um valor de tempo de execução do tipo List<T>, ela não será preenchida porque IEnumerable<T> não é capaz de preencher.
Os tipos de valor exigem um setter para dar suporte à população. Nesses casos, a desserialização usa uma cópia do valor da propriedade, que será atribuída de volta ao setter após a conclusão.
Construtores
JsonObjectCreationHandlingAttribute(JsonObjectCreationHandling) |
Inicializa uma nova instância de JsonObjectCreationHandlingAttribute. |
Propriedades
Handling |
Obtém a configuração a ser usada ao desserializar membros. |
TypeId |
Quando implementado em uma classe derivada, obtém um identificador exclusivo para este Attribute. (Herdado de Attribute) |
Métodos
Equals(Object) |
Retorna um valor que indica se essa instância é igual a um objeto especificado. (Herdado de Attribute) |
GetHashCode() |
Retorna o código hash para a instância. (Herdado de Attribute) |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
IsDefaultAttribute() |
Quando substituído em uma classe derivada, indica se o valor dessa instância é o valor padrão para a classe derivada. (Herdado de Attribute) |
Match(Object) |
Quando substituído em uma classe derivada, retorna um valor que indica se essa instância é igual a um objeto especificado. (Herdado de Attribute) |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual. (Herdado de Object) |
Implantações explícitas de interface
_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mapeia um conjunto de nomes para um conjunto correspondente de identificadores de expedição. (Herdado de Attribute) |
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Recupera as informações de tipo para um objeto, que pode ser usado para obter as informações de tipo para uma interface. (Herdado de Attribute) |
_Attribute.GetTypeInfoCount(UInt32) |
Retorna o número de interfaces de informações do tipo que um objeto fornece (0 ou 1). (Herdado de Attribute) |
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Fornece acesso a propriedades e métodos expostos por um objeto. (Herdado de Attribute) |