Come convertire JSON in classe C#

Come Convertire Json In Classe C



JSON O Notazione oggetto JavaScript si basa su un sottoinsieme del linguaggio di programmazione JavaScript, ma è indipendente dal linguaggio e può essere utilizzato con qualsiasi linguaggio di programmazione dotato di un parser JSON. Usare JSON data nella programmazione C#, è necessario convertirli JSON ad un Classe C# . Ciò consente ai programmatori di interagire con i dati in modo indipendente dai tipi, riducendo il rischio di errori e semplificando la manutenzione del codice.

Lavorando con JSON i dati in C# richiedono spesso la conversione del file Dati JSON in Classi C# che possono essere facilmente modificati e utilizzati nell'applicazione. Questo tutorial esaminerà il processo di conversione JSON dati alle classi C#, con esempi di codice per aiutarti lungo il percorso.







Come convertire un JSON in una classe C#

I passaggi per convertire a JSON ad un Classe C# Sono:



Passaggio 1: analizzare i dati JSON



Il primo passo per la conversione JSON ad un Classe C# è analizzare i dati JSON e determinarne la struttura. Ciò comporta l'identificazione delle chiavi o delle proprietà dei dati e dei tipi di dati corrispondenti. Una volta raccolte queste informazioni, possiamo iniziare a creare una classe C# corrispondente che rappresenterà i dati JSON.





Passaggio 2: creare una classe C# che rappresenti i dati JSON

IL JSON il nome dei dati viene quindi utilizzato per definire una classe. All'interno di questa classe, definiamo proprietà che corrispondono alle chiavi in JSON dati. Impostiamo i tipi di dati delle proprietà in modo che corrispondano ai tipi di dati dei valori nel file JSON dati. Ad esempio, se una chiave nel file JSON data ha un valore di una stringa, definiamo la proprietà corrispondente nella classe C# come una stringa.



Passaggio 3: deserializzare i dati JSON

Dopo aver creato la classe C#, il passaggio successivo consiste nel deserializzare il file JSON dati in un'istanza di classe. Questo è possibile con il Newtonsoft.Json library, che fornisce un'API semplice per la deserializzazione JSON dati. Devi installare e importare il file Newtonsoft.Json package per usarlo nel codice. Crea un'istanza di JsonSerializer classe e chiama il Deserializzare metodo, consegnando il JSON data come stringa e la classe C# come parametro di tipo generico:

usando Newtonsoft.Json;

// Dati JSON
stringa json = '{' nome ':' John Smith ',' età ':30}' ;
// C # classe
persona di classe pubblica
{
stringa pubblica Nome { Ottenere; impostato ; }
pubblico int Età { Ottenere; impostato ; }
}
// Deserializza i dati JSON in un oggetto Person
Persona persona = JsonConvert.DeserializeObject < Persona > ( json ) ;

IL JSON data in questo esempio è un oggetto semplice con una proprietà name e age e la classe C# è una classe Person con proprietà simili. JsonConvert.DeserializeObject serve per convertire JSON dati in un oggetto Persona che può essere modificato e utilizzato nell'applicazione.

Passaggio 4: manipolare l'oggetto C#

Dopo aver deserializzato il file Dati JSON in un Oggetto C# , può essere manipolato e utilizzato nell'applicazione come desiderato. Le proprietà possono essere lette o impostate, i metodi possono essere richiamati e l'oggetto può essere fornito come parametro ad altre procedure o funzioni.

Ecco un esempio di come lavorare con il Persona oggetto creato nel passaggio precedente:

// Prendi la persona il nome di
stringa nome = persona.Nome;

// Imposta la persona'
saggio
persona.Età = 31 ;

// Chiama un metodo sull'oggetto persona
persona.StampaDettagli ( ) ;

L'oggetto person viene utilizzato in questo esempio per ottenere il nome della persona, impostare l'età della persona e chiamare il StampaDettagli metodo sull'oggetto.

Ecco un codice completo che dimostra come convertire JSON in una classe C# .

utilizzando il sistema;
usando Newtonsoft.Json;

spazio dei nomi JsonToClassExample
{
programma di classe
{
vuoto statico principale ( corda [ ] arg )
{
stringa json = @ '{
'firstName': 'Larry',
'cognome': 'Kevin',
'indirizzo': {
'strada': 'Via principale',
'città': 'Venezia',
}
}'
;

Rootobject myObject = JsonConvert.DeserializeObject < Rootoggetto > ( json ) ;

Console.WriteLine ( 'Il nome è: ' + mioOggetto.nome ) ;
Console.WriteLine ( 'Il cognome è: ' + mioOggetto.cognome ) ;
Console.WriteLine ( 'La strada è: ' + mioOggetto.indirizzo.strada ) ;
Console.WriteLine ( 'La città è: ' + mioOggetto.indirizzo.città ) ;


Console.ReadLine ( ) ;
}
}

oggetto radice di classe pubblica
{
stringa pubblica nome { Ottenere; impostato ; }
stringa pubblica lastName { Ottenere; impostato ; }
indirizzo indirizzo pubblico { Ottenere; impostato ; }
}

classe pubblica Indirizzo
{
strada di corda pubblica { Ottenere; impostato ; }
città stringa pubblica { Ottenere; impostato ; }
}
}

Il codice precedente mostra come utilizzare Pacchetto NuGet Newtonsoft.Json A deserializzare UN stringa JSON in una classe C# . La stringa JSON comprende informazioni sul nome e cognome di una persona, nonché il suo indirizzo (via e città). Come classi C#, le classi Rootobject e Address stabiliscono la struttura dei dati JSON.

IL JsonConvert.DeserializeObject Il metodo viene utilizzato per convertire una stringa JSON in a Rootoggetto esempio. I dati vengono quindi visualizzati sulla console accedendo agli attributi del file Rootoggetto e Classi di indirizzo. IL Console.ReadLine metodo viene utilizzato per arrestare il programma prima che termini.

Produzione

Altri modi per convertire JSON in C#

Puoi anche copiare il file JSON dati negli appunti e utilizzare a Generatore di classi da JSON a C# per generare la classe C#. Ci sono diversi strumenti online, come ad esempio Json2CSharp E Tipo rapido , che può aiutarti a generare la tua classe C# da JSON dati. Incolla il JSON dati nel campo appropriato e lascia che lo strumento generi la classe C# per te. Questo approccio è semplice e veloce. Tuttavia, ai fini dell'apprendimento, è necessario seguire il primo metodo.

Conclusione

Conversione di dati JSON in una classe C# comporta l'analisi del JSON data, creando una classe C# corrispondente e deserializzando i dati JSON nell'oggetto classe C#. Questo processo può essere utile quando si lavora con JSON dati nelle applicazioni C#, semplificando la lettura, la manipolazione e l'invio di dati a servizi Web o API. Da tradurre rapidamente da JSON a C# , puoi anche utilizzare diversi strumenti web, ad esempio Json2CSharp E Tipo rapido .