Jak przekonwertować JSON na klasę C#

Jak Przekonwertowac Json Na Klase C



JSON Lub Notacja obiektu JavaScript jest oparty na podzbiorze języka programowania JavaScript, ale jest niezależny od języka i może być używany z dowolnym językiem programowania, który ma parser JSON. Używać JSON dane w programowaniu w języku C# należy przekonwertować JSON do klasa C# . Umożliwia to programistom interakcję z danymi w sposób bezpieczny dla typów, co zmniejsza ryzyko błędów i ułatwia utrzymanie kodu.

Praca z JSON danych w języku C# często wymaga konwersji pliku dane JSON do klasy C# które można łatwo edytować i wykorzystywać w aplikacji. W tym samouczku omówimy proces konwersji JSON data do klas języka C#, z przykładami kodu, które pomogą Ci po drodze.







Jak przekonwertować JSON na klasę C#

Kroki, aby przekonwertować a JSON do Klasa C# Czy:



Krok 1: Przeanalizuj dane JSON



Pierwszy krok w konwersji JSON do klasa C# jest analiza danych JSON i określenie ich struktury. Obejmuje to identyfikację kluczy lub właściwości danych i odpowiadających im typów danych. Po zebraniu tych informacji możemy rozpocząć tworzenie odpowiedniej klasy C#, która będzie reprezentować dane JSON.





Krok 2: Utwórz klasę C# reprezentującą dane JSON

The JSON nazwa danych jest następnie używana do zdefiniowania klasy. Wewnątrz tej klasy definiujemy właściwości pasujące do kluczy w pliku JSON dane. Ustawiamy typy danych właściwości, aby pasowały do ​​typów danych wartości w pliku JSON dane. Na przykład, jeśli klucz w pliku JSON data ma wartość ciągu, definiujemy odpowiednią właściwość w klasie C# jako ciąg.



Krok 3: Deserializuj dane JSON

Po utworzeniu klasy języka C# następnym krokiem jest deserializacja klasy JSON dane do instancji klasy. Jest to możliwe z Newtonsoft.Json biblioteka, która zapewnia prosty interfejs API do deserializacji JSON dane. Musisz zainstalować i zaimportować plik Newtonsoft.Json package w celu użycia go w swoim kodzie. Utwórz instancję JsonSerializer klasa i zadzwoń do Deserializuj metoda, wręczając JSON data jako ciąg znaków i klasa C# jako parametr typu ogólnego:

przy użyciu Newtonsoft.Json;

// dane JSON
ciąg json = '{' nazwa ':' John Smith ',' wiek ':30}' ;
// C # klasa
osoba klasy publicznej
{
ciąg publiczny Nazwa { Dostawać; ustawić ; }
publiczny int Wiek { Dostawać; ustawić ; }
}
// Deserializuj dane JSON do obiektu Person
Osoba osoba = JsonConvert.DeserializeObject < Osoba > ( json ) ;

The JSON data w tym przykładzie jest prostym obiektem z właściwością name i age, a klasa języka C# jest klasą Person o podobnych właściwościach. JsonConvert.DeserializeObject służy do konwersji JSON danych do obiektu Person, który można edytować i używać w aplikacji.

Krok 4: Manipuluj obiektem języka C#

Po deserializacji dane JSON w Obiekt C# , można nim manipulować i wykorzystywać go w aplikacji zgodnie z potrzebami. Właściwości można odczytywać lub ustawiać, metody można wywoływać, a obiekt można udostępniać jako parametr innym procedurom lub funkcjom.

Oto przykład, jak pracować z Osoba obiekt, który zrobiłeś w poprzednim kroku:

// Zdobądź osobę imię
ciąg nazwa = osoba.Imię;

// Ustaw osobę'
szałwia
osoba.Wiek = 31 ;

// Wywołaj metodę na obiekcie osoby
osoba.DrukujSzczegóły ( ) ;

W tym przykładzie obiekt person jest używany do uzyskania imienia i nazwiska osoby, ustawienia jej wieku i wywołania Drukuj szczegóły metoda na obiekcie.

Oto kompletny kod pokazujący, jak to zrobić przekonwertować JSON na klasę C# .

przy użyciu Systemu;
przy użyciu Newtonsoft.Json;

przestrzeń nazw JsonToClassExample
{
Program klasowy
{
statyczna pustka Główny ( strunowy [ ] argumenty )
{
ciąg json = @ '{
„imię”: „Larry”,
'nazwisko': 'Kevin',
'adres': {
„ulica”: „Główna ulica”,
„miasto”: „Wenecja”,
}
}'
;

Główny obiekt myObject = JsonConvert.DeserializeObject < Obiekt główny > ( json ) ;

Console.WriteLine ( „Pierwsze imię to:” + mójObiekt.imię ) ;
Console.WriteLine ( „Nazwisko to:” + mójObiekt.nazwisko ) ;
Console.WriteLine ( „Ulica to:” + mójObiekt.adres.ulica ) ;
Console.WriteLine ( 'Miasto jest: ' + mójObiekt.adres.miasto ) ;


Konsola. Odczyt wiersza ( ) ;
}
}

obiekt główny klasy publicznej
{
publiczny ciąg imię { Dostawać; ustawić ; }
ciąg publiczny nazwisko { Dostawać; ustawić ; }
adres publiczny adres { Dostawać; ustawić ; }
}

adres klasy publicznej
{
ogólnodostępna ulica smyczkowa { Dostawać; ustawić ; }
publiczne miasto strunowe { Dostawać; ustawić ; }
}
}

Powyższy kod demonstruje sposób użycia Pakiet Newtonsoft.Json NuGet Do deserializować A Ciąg JSON do klasy C# . Ciąg JSON zawiera informacje na temat imienia i nazwiska osoby oraz jej adresu (ulica i miasto). Jako klasy C#, klasy Rootobject i Address ustalają strukturę danych JSON.

The JsonConvert.DeserializeObject Metoda służy do konwersji ciągu JSON na a Obiekt główny instancja. Dane są następnie wyświetlane na konsoli poprzez dostęp do atrybutów pliku Obiekt główny i klasy adresów. The Konsola. Odczyt wiersza Metoda służy do zatrzymania programu przed jego zakończeniem.

Wyjście

Inne sposoby konwersji JSON na C#

Możesz też skopiować JSON dane do schowka i użyj pliku a JSON do generatora klas C# wygenerować klasę C#. W Internecie dostępnych jest kilka narzędzi, np Json2CSharp I Szybkie wpisywanie , które mogą pomóc w wygenerowaniu klasy C# z JSON dane. Wklej JSON data w odpowiednim polu i pozwól narzędziu wygenerować dla Ciebie klasę C#. Ta metoda jest prosta i szybka. Jednak do celów edukacyjnych musisz postępować zgodnie z pierwszą metodą.

Wniosek

Konwertowanie danych JSON na klasę C# polega na analizie JSON data, tworząc odpowiednią klasę C# i deserializując dane JSON do obiektu klasy C#. Ten proces może być przydatny podczas pracy z JSON danych w aplikacjach C#, ułatwiając odczytywanie, manipulowanie i wysyłanie danych do usług internetowych lub interfejsów API. Aby szybko przetłumaczyć JSON do C# , możesz także skorzystać z kilku narzędzi internetowych, takich jak Json2CSharp I Szybkie wpisywanie .