Kako pretvoriti JSON v razred C#

Kako Pretvoriti Json V Razred C



JSON oz Zapis predmeta JavaScript temelji na podnaboru programskega jezika JavaScript, vendar je neodvisen od jezika in se lahko uporablja s katerim koli programskim jezikom, ki ima razčlenjevalnik JSON. Uporabiti JSON podatkov v programiranju C#, je treba pretvoriti JSON do a razred C# . To programerjem omogoča interakcijo s podatki na tipsko varen način, kar zmanjša tveganje napak in poenostavi vzdrževanje kode.

Delati z JSON podatki v C# pogosto zahtevajo pretvorbo podatki JSON v razredi C# ki jih je mogoče enostavno urejati in uporabljati v aplikaciji. Ta vadnica bo obravnavala postopek pretvorbe JSON podatkov v razrede C# s primeri kode, ki vam bodo pomagali na poti.







Kako pretvoriti JSON v razred C#

Koraki za pretvorbo a JSON do a Razred C# so:



1. korak: analizirajte podatke JSON



Prvi korak pri pretvorbi JSON do a razred C# je analizirati podatke JSON in določiti njihovo strukturo. To vključuje prepoznavanje ključev ali lastnosti podatkov in njihovih ustreznih tipov podatkov. Ko so te informacije zbrane, lahko začnemo ustvarjati ustrezen razred C#, ki bo predstavljal podatke JSON.





2. korak: Ustvarite razred C#, ki predstavlja podatke JSON

The JSON ime podatkov se nato uporabi za definiranje razreda. Znotraj tega razreda definiramo lastnosti, ki se ujemajo s ključi v JSON podatke. Podatkovne tipe lastnosti nastavimo tako, da se ujemajo s podatkovnimi tipi vrednosti v JSON podatke. Na primer, če je ključ v JSON podatek ima vrednost niza, definiramo ustrezno lastnost v razredu C# kot niz.



3. korak: Deserializirajte podatke JSON

Po ustvarjanju razreda C# je naslednji korak deserializacija JSON podatke v primerek razreda. To je mogoče z Newtonsoft.Json knjižnico, ki ponuja preprost API za deserializacijo JSON podatke. Namestiti in uvoziti morate Newtonsoft.Json paket, da ga uporabite v svoji kodi. Ustvarite primerek JsonSerializer razreda in pokličite Deserializiraj metoda, predaja v JSON podatki kot niz in razred C# kot parameter splošnega tipa:

z uporabo Newtonsoft.Json;

// podatki JSON
niz json = '{' ime ':' John Smith ',' starost ':30}' ;
// C # razred
javni razred Oseba
{
ime javnega niza { dobiti; set ; }
public int Starost { dobiti; set ; }
}
// Deserializirajte podatke JSON v objekt Person
Oseba oseba = JsonConvert.DeserializeObject < Oseba > ( json ) ;

The JSON podatki v tem primeru so preprost objekt z lastnostjo imena in starosti, razred C# pa je razred osebe s podobnimi lastnostmi. JsonConvert.DeserializeObject se uporablja za pretvorbo JSON podatke v objekt Oseba, ki ga je mogoče urejati in uporabljati v aplikaciji.

4. korak: Manipulirajte objekt C#

Po deserializaciji podatki JSON v a C# objekt , ga je mogoče po želji manipulirati in uporabljati v aplikaciji. Lastnosti je mogoče prebrati ali nastaviti, metode je mogoče priklicati, objekt pa je mogoče zagotoviti kot parameter drugim postopkom ali funkcijam.

Tukaj je primer, kako delati z Oseba predmet, ki ste ga naredili v prejšnjem koraku:

// Pridobite osebo ime
ime niza = oseba.Ime;

// Nastavi osebo'
žajbelj
oseba.Starost = 31 ;

// Pokličite metodo na objektu osebe
oseba.PrintDetails ( ) ;

Objekt osebe se v tem primeru uporablja za pridobitev imena osebe, nastavitev starosti osebe in klic osebe PrintDetails metodo na objektu.

Tukaj je popolna koda, ki prikazuje, kako pretvori JSON v razred C# .

z uporabo sistema;
z uporabo Newtonsoft.Json;

imenski prostor JsonToClassExample
{
razredni program
{
statična praznina Main ( vrvica [ ] args )
{
niz json = @ '{
'firstName': 'Larry',
'lastName': 'Kevin',
'naslov': {
'ulica': 'Glavna ulica',
'mesto': 'Benetke',
}
}'
;

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

Console.WriteLine ( 'Ime je:' + myObject.firstName ) ;
Console.WriteLine ( 'Priimek je:' + myObject.lastName ) ;
Console.WriteLine ( 'Ulica je:' + mojObjekt.naslov.ulica ) ;
Console.WriteLine ( 'Mesto je:' + myObject.address.city ) ;


Console.ReadLine ( ) ;
}
}

javni razred Rootobject
{
javni niz FirstName { dobiti; set ; }
javni niz priimek { dobiti; set ; }
naslov javnega naslova { dobiti; set ; }
}

naslov javnega razreda
{
javna string ulica { dobiti; set ; }
javno string mesto { dobiti; set ; }
}
}

Zgornja koda prikazuje uporabo Paket Newtonsoft.Json NuGet do deserializirati a Niz JSON v razred C# . Niz JSON vsebuje podatke o imenu in priimku osebe ter njen naslov (ulica in mesto). Razreda Rootobject in Address kot razreda C# vzpostavljata strukturo podatkov JSON.

The JsonConvert.DeserializeObject se uporablja za pretvorbo niza JSON v a Rootobjekt primerek. Podatki se nato prikažejo na konzoli z dostopom do atributov Rootobjekt in naslovite razrede. The Console.ReadLine metoda se uporablja za zaustavitev programa, preden se zaključi.

Izhod

Drugi načini za pretvorbo JSON v C#

Lahko tudi kopirate JSON podatke v odložišče in uporabite a Generator razreda JSON v C# za ustvarjanje razreda C#. Na spletu je več orodij, kot npr Json2CSharp in QuickType , ki vam lahko pomaga ustvariti razred C# iz JSON podatke. Prilepite JSON podatke v ustrezno polje in pustite, da orodje za vas ustvari razred C#. Ta pristop je preprost in hiter. Vendar pa morate za namene učenja upoštevati prvo metodo.

Zaključek

Pretvorba podatkov JSON v razred C# vključuje analizo JSON podatke, ustvarjanje ustreznega razreda C# in deserializacijo podatkov JSON v objekt razreda C#. Ta postopek je lahko koristen pri delu z JSON podatkov v aplikacijah C#, kar olajša branje, upravljanje in pošiljanje podatkov spletnim storitvam ali API-jem. Za hitro prevajanje JSON v C# , lahko uporabite tudi več spletnih orodij, npr Json2CSharp in QuickType .