Sdílet prostřednictvím


JsonObjectCreationHandlingAttribute Třída

Definice

Určuje způsob, jakým deserializace zpracovává vytváření objektů pro pole nebo vlastnosti.

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
Dědičnost
JsonObjectCreationHandlingAttribute
Atributy

Poznámky

Při umístění do pole nebo vlastnosti tento atribut označuje, zda bude člen nahrazen nebo naplněn. Při použití výchozích překladačů se tento atribut mapuje na ObjectCreationHandling.

Při umístění na typ s Populate, tento atribut označuje, že všechny členy, které podporují populaci, budou naplněny. Při použití výchozích překladačů se tento atribut mapuje na PreferredPropertyObjectCreationHandling.

Atribut odpovídá pouze upřednostňovaným hodnotám zpracování vytváření vlastností při umístění na typ. Pokud je například JsonObjectCreationHandlingAttribute vlastnost s Populate umístěna na třídu a vlastnost není možné naplnit, bude nahrazena. To může být true například v případě, že typ hodnoty nemá setter nebo vlastnost je typu IEnumerable<T>.

Bere se v úvahu pouze typ vlastnosti. Pokud je například vlastnost typu IEnumerable<T> has a má hodnotu run-time typu List<T>, nebude naplněna, protože IEnumerable<T> není schopna naplnit.

Typy hodnot vyžadují pro podporu populace setter. V takových případech deserializace používá kopii hodnoty vlastnosti, která se po dokončení přiřadí zpět k setter.

Konstruktory

JsonObjectCreationHandlingAttribute(JsonObjectCreationHandling)

Inicializuje novou instanci .JsonObjectCreationHandlingAttribute

Vlastnosti

Handling

Získá konfiguraci, která se má použít při deserializaci členů.

TypeId

Při implementaci v odvozené třídě získá jedinečný identifikátor pro tuto Attributetřídu .

(Zděděno od Attribute)

Metody

Equals(Object)

Vrací hodnotu, která určuje, zda je tato instance rovna zadanému objektu.

(Zděděno od Attribute)
GetHashCode()

Vrátí hodnotu hash pro tuto instanci.

(Zděděno od Attribute)
GetType()

Type Získá z aktuální instance.

(Zděděno od Object)
IsDefaultAttribute()

Při přepsání v odvozené třídě označuje, zda je hodnota této instance výchozí hodnotou pro odvozenou třídu.

(Zděděno od Attribute)
Match(Object)

Při přepsání v odvozené třídě vrátí hodnotu, která označuje, zda se tato instance rovná zadanému objektu.

(Zděděno od Attribute)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Explicitní implementace rozhraní

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Mapuje sadu názvů na odpovídající sadu identifikátorů pro rozesílání.

(Zděděno od Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Načte informace o typu objektu, které lze použít k získání informací o typu pro rozhraní.

(Zděděno od Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Získá počet rozhraní typu informací, které objekt poskytuje (0 nebo 1).

(Zděděno od Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Poskytuje přístup k vlastnostem a metodám vystaveným objektem.

(Zděděno od Attribute)

Platí pro