
Serializzazione JSON
System.Text.Json, JsonSerializer, custom converters, naming policies, gestione null
1Qual è il namespace principale per la serializzazione JSON nel .NET moderno?
Qual è il namespace principale per la serializzazione JSON nel .NET moderno?
Risposta
System.Text.Json è il namespace ufficiale per la serializzazione JSON in .NET Core 3.0+. Sostituisce progressivamente Newtonsoft.Json (Json.NET) poiché è più performante, integrato nel framework e ottimizzato per scenari moderni. Newtonsoft.Json rimane disponibile tramite NuGet per la retrocompatibilità o per funzionalità avanzate non disponibili in System.Text.Json.
2Quale metodo usare per serializzare un oggetto C# in una stringa JSON?
Quale metodo usare per serializzare un oggetto C# in una stringa JSON?
Risposta
JsonSerializer.Serialize converte un oggetto C# in una stringa JSON. Questo metodo statico accetta l'oggetto da serializzare e, opzionalmente, JsonSerializerOptions per personalizzare il comportamento. Serialize restituisce una string, mentre SerializeToUtf8Bytes restituisce un byte[] per ottimizzare le prestazioni evitando l'allocazione della string.
3Qual è la convenzione di denominazione predefinita di System.Text.Json per le proprietà JSON?
Qual è la convenzione di denominazione predefinita di System.Text.Json per le proprietà JSON?
Risposta
Per impostazione predefinita, System.Text.Json conserva esattamente i nomi delle proprietà C# (PascalCase sensibile alle maiuscole). Se una proprietà C# si chiama UserName, il JSON conterrà UserName. Per ottenere camelCase (userName), bisogna configurare JsonSerializerOptions con PropertyNamingPolicy = JsonNamingPolicy.CamelCase. Questo differisce da Newtonsoft.Json, che usa camelCase per impostazione predefinita.
Come deserializzare una stringa JSON in un oggetto C# tipizzato?
Quale attributo usare per ignorare una proprietà durante la serializzazione JSON?
+17 domande da colloquio
Altri argomenti di colloquio .NET
Fondamenti di C#
LINQ & Delegates
Fondamenti del linguaggio C#
Fondamenti di ASP.NET Core
Ciclo di vita delle richieste in ASP.NET Core
Configuration & Settings
Ciclo di vita dell'applicazione
Dependency Injection
Entity Framework Core
Minimal APIs
Sviluppo di Web API
Async in ASP.NET Core
Authentication & Authorization
HttpClient & Networking
Entity Framework Core avanzato
Funzionalità avanzate di C#
Clean Architecture
Logging, Monitoring & Observability
Test unitari & xUnit
Test di integrazione
Docker & Containerization
Gestione dei pacchetti NuGet
Memory Management & GC
Programmazione reattiva
Async/await & Pattern
.NET Design Patterns
Ottimizzazione delle prestazioni
Sicurezza e Best Practices
SignalR e tempo reale
Architettura a Microservizi
Padroneggia .NET per il tuo prossimo colloquio
Accedi a tutte le domande, flashcards, test tecnici, esercizi di code review e simulatori di colloquio.
Inizia gratis