System.Text.Json.Serialization Spazio dei nomi

Contiene classi usate per personalizzare ed estendere la serializzazione e la deserializzazione degli oggetti in documenti o flussi in formato JSON, tramite un modello di attributo o tramite convertitori di tipi.

Classi

Nome Descrizione
BinaryDataJsonConverter

Serializza le BinaryData istanze come stringhe JSON Base64.

JsonAttribute

Fornisce la classe base per gli attributi di serializzazione.

JsonConstructorAttribute

Se posizionato su un costruttore, indica che il costruttore deve essere usato per creare istanze del tipo alla deserializzazione.

JsonConverter

Converte un oggetto o un valore in o da JSON.

JsonConverter<T>

Converte un oggetto o un valore in o da JSON.

JsonConverterAttribute

Se posizionato su una proprietà o un tipo, specifica il tipo di convertitore da utilizzare.

JsonConverterFactory

Supporta la conversione di diversi tipi usando un modello factory.

JsonDerivedTypeAttribute

Se posizionato su una dichiarazione di tipo, indica che il sottotipo specificato deve essere scelto per la serializzazione polimorfica.

JsonExtensionDataAttribute

Se posizionato su una proprietà di tipo IDictionary<TKey,TValue>, tutte le proprietà che non dispongono di un membro corrispondente vengono aggiunte a tale dizionario durante la deserializzazione e scritte durante la serializzazione.

JsonIgnoreAttribute

Impedisce la serializzazione o la deserializzazione di una proprietà.

JsonIncludeAttribute

Indica che il membro deve essere incluso per la serializzazione e la deserializzazione.

JsonNamingPolicyAttribute

Contiene classi usate per personalizzare ed estendere la serializzazione e la deserializzazione degli oggetti in documenti o flussi in formato JSON, tramite un modello di attributo o tramite convertitori di tipi.

JsonNumberEnumConverter<TEnum>

Convertitore per convertire enumerazioni da e verso valori numerici.

JsonNumberHandlingAttribute

Se posizionato su un tipo, una proprietà o un campo, indica quali JsonNumberHandling impostazioni devono essere usate durante la serializzazione o la deserializzazione dei numeri.

JsonObjectCreationHandlingAttribute

Determina in che modo la deserializzazione gestisce la creazione di oggetti per campi o proprietà.

JsonPolymorphicAttribute

Se posizionato su un tipo, indica che il tipo deve essere serializzato in modo polimorfico.

JsonPropertyNameAttribute

Specifica il nome della proprietà presente nel codice JSON durante la serializzazione e la deserializzazione.

JsonPropertyOrderAttribute

Specifica l'ordine delle proprietà presente nel codice JSON durante la serializzazione. I valori inferiori vengono serializzati per primi. Se l'attributo non viene specificato, il valore predefinito è 0.

JsonRequiredAttribute

Indica che il membro con annotazioni deve essere associato a una proprietà JSON sulla deserializzazione.

JsonSerializableAttribute

Indica al generatore di origine System.Text.Json di generare codice sorgente per ottimizzare le prestazioni durante la serializzazione e la deserializzazione delle istanze del tipo e dei tipi specificati nel relativo oggetto grafico.

JsonSerializerContext

Fornisce metadati su un set di tipi rilevanti per la serializzazione JSON.

JsonSourceGenerationOptionsAttribute

Indica al generatore di origine System.Text.Json di presupporre che le opzioni specificate vengano usate in fase di esecuzione tramite JsonSerializerOptions.

JsonStringEnumConverter

Converte i valori di enumerazione in e da stringhe.

JsonStringEnumConverter<TEnum>

Convertitore per convertire le enumerazioni in e da stringhe.

JsonStringEnumMemberNameAttribute

Determina il valore stringa che deve essere utilizzato durante la serializzazione di un membro enumerazione.

JsonUnmappedMemberHandlingAttribute

Se posizionato su un tipo, determina la JsonUnmappedMemberHandling configurazione per il tipo specifico, sostituendo l'impostazione globale UnmappedMemberHandling .

ReferenceHandler

Definisce il modo in cui gestisce JsonSerializer i riferimenti sulla serializzazione e la deserializzazione.

ReferenceHandler<T>

Definisce il modo in cui gestisce JsonSerializer i riferimenti sulla serializzazione e la deserializzazione.

ReferenceResolver

Definisce il modo in cui gestisce JsonSerializer i riferimenti sulla serializzazione e la deserializzazione. Definisce il comportamento principale del mantenimento dei riferimenti alla serializzazione e alla deserializzazione.

Interfacce

Nome Descrizione
IJsonOnDeserialized

Specifica che il tipo JSON deve avere il relativo OnDeserialized() metodo chiamato dopo la deserializzazione.

IJsonOnDeserializing

Specifica che il tipo deve avere il relativo OnDeserializing() metodo chiamato prima che si verifichi la deserializzazione.

IJsonOnSerialized

Specifica che il tipo deve avere il relativo OnSerialized() metodo chiamato dopo la serializzazione.

IJsonOnSerializing

Specifica che il tipo deve avere il relativo OnSerializing() metodo chiamato prima che si verifichi la serializzazione.

Enumerazioni

Nome Descrizione
JsonIgnoreCondition

Controlla il modo in cui il JsonIgnoreAttribute ignora le proprietà sulla serializzazione e la deserializzazione.

JsonKnownNamingPolicy

JsonNamingPolicy da usare in fase di esecuzione.

JsonKnownReferenceHandler

ReferenceHandler da usare in fase di esecuzione.

JsonNumberHandling

Determina come JsonSerializer gestisce i numeri durante la serializzazione e la deserializzazione.

JsonObjectCreationHandling

Determina come la deserializzazione gestirà la creazione di oggetti per campi o proprietà.

JsonSourceGenerationMode

Modalità di generazione per il generatore di origine System.Text.Json.

JsonUnknownDerivedTypeHandling

Definisce il modo in cui devono essere gestiti gli oggetti di un tipo di runtime derivato che non è stato dichiarato in modo esplicito per la serializzazione polimorfica.

JsonUnknownTypeHandling

Definisce il modo in cui la deserializzazione di un tipo dichiarato come Object viene gestita durante la deserializzazione.

JsonUnmappedMemberHandling

Determina il modo in cui JsonSerializer gestisce le proprietà JSON di cui non è possibile eseguire il mapping a un membro .NET specifico durante la deserializzazione dei tipi di oggetto.