JSON'u C# Sınıfına Dönüştürme

Json U C Sinifina Donusturme



JSON veya JavaScript Nesnesi Gösterimi JavaScript programlama dilinin bir alt kümesini temel alır, ancak dilden bağımsızdır ve JSON ayrıştırıcısı olan herhangi bir programlama diliyle kullanılabilir. Kullanmak JSON C# programlamadaki veriler dönüştürülmeli JSON bir C# sınıfı . Bu, programcıların verilerle tip-güvenli bir şekilde etkileşim kurmasını mümkün kılar, bu da hata riskini azaltır ve kodun bakımını kolaylaştırır.

İle çalışan JSON C#'daki veriler sıklıkla dönüştürülmeyi gerektirir JSON verileri içine C# sınıfları kolayca düzenlenebilir ve uygulamada kullanılabilir. Bu eğitim, dönüştürme sürecini ele alacaktır. JSON yol boyunca size yardımcı olacak kod örnekleriyle verileri C# sınıflarına aktarın.







Bir JSON'u C# Sınıfına Dönüştürme

dönüştürme adımları JSON bir C# Sınıfı bunlar:



1. Adım: JSON verilerini analiz edin



Dönüştürmenin ilk adımı JSON bir C# sınıfı JSON verilerini analiz etmek ve yapısını belirlemektir. Bu, verilerin anahtarlarını veya özelliklerini ve bunlara karşılık gelen veri türlerini tanımlamayı içerir. Bu bilgiler toplandıktan sonra, JSON verilerini temsil edecek karşılık gelen bir C# sınıfı oluşturmaya başlayabiliriz.





2. Adım: JSON verilerini temsil eden bir C# sınıfı oluşturun

bu JSON data adı daha sonra bir sınıf tanımlamak için kullanılır. Bu sınıfın içinde, içindeki anahtarlarla eşleşen özellikleri tanımlarız. JSON veri. Özelliklerin veri türlerini, içindeki değerlerin veri türleriyle eşleşecek şekilde ayarladık. JSON veri. Örneğin, eğer bir anahtar JSON data bir dize değerine sahipse, karşılık gelen özelliği C# sınıfında bir dize olarak tanımlarız.



3. Adım: JSON verilerinin serisini kaldırın

C# sınıfını oluşturduktan sonraki adım, sınıfı seri durumdan çıkarmaktır. JSON verileri bir sınıf örneğine aktarın. ile bu mümkün Newtonsoft.Json seri durumdan çıkarma için basit bir API sağlayan kitaplık JSON veri. yüklemeniz ve içe aktarmanız gerekir. Newtonsoft.Json paketi kodunuzda kullanmak için. örneğini oluşturun JsonSerializer sınıf ve çağrı seri durumdan çıkar yöntem, teslim JSON dizge olarak veri ve genel tür parametresi olarak C# sınıfı:

Newtonsoft.Json kullanarak;

// JSON verileri
dizi json = '{' isim ':' John Smith ',' yaş ':30}' ;
// C # sınıf
genel sınıf Kişi
{
genel dizi Adı { elde etmek; ayarlamak ; }
genel int Yaş { elde etmek; ayarlamak ; }
}
// JSON verilerini bir Kişi nesnesine seri hale getirme
Kişi kişi = JsonConvert.DeserializeObject < Kişi > ( json ) ;

bu JSON Bu örnekteki veriler, name ve age özelliğine sahip basit bir nesnedir ve C# sınıfı, benzer özelliklere sahip bir Person sınıfıdır. JsonConvert.DeserializeObject dönüştürmek için kullanılır JSON veriler, uygulamada düzenlenebilen ve kullanılabilen bir Kişi nesnesine dönüştürülür.

4. Adım: C# nesnesini işleyin

seri hale getirdikten sonra JSON verileri içine C# nesnesi , istenildiği gibi manipüle edilebilir ve uygulamada kullanılabilir. Özellikler okunabilir veya ayarlanabilir, yöntemler çağrılabilir ve nesne diğer prosedürler veya işlevler için bir parametre olarak sağlanabilir.

İşte nasıl çalışılacağına dair bir örnek Kişi önceki adımda yaptığınız nesne:

// kişiyi al 'adı
dizi adı = kişi.İsim;

// Kişiyi ayarla'
adaçayı
kişi.Yaş = 31 ;

// Kişi nesnesinde bir yöntem çağırın
kişi.BaskıAyrıntıları ( ) ;

Bu örnekte kişi nesnesi, kişinin adını almak, kişinin yaşını ayarlamak ve kişiyi aramak için kullanılır. Ayrıntıları Yazdır nesne üzerindeki yöntem.

İşte nasıl yapılacağını gösteren eksiksiz bir kod JSON'u bir C# sınıfına dönüştürün .

Sistemi kullanarak;
Newtonsoft.Json kullanarak;

ad alanı JsonToClassÖrnek
{
sınıf Programı
{
statik boşluk Ana ( sicim [ ] argümanlar )
{
dizi json = @ '{
'ad': 'Larry',
'soyadı': 'Kevin',
'adres': {
'sokak': 'Ana Cadde',
'şehir': 'Venedik',
}
}'
;

Rootobject myObject = JsonConvert.DeserializeObject < kök nesne > ( json ) ;

Konsol.WriteLine ( 'İlk ad: ' + Nesnem.ilkAdım ) ;
Konsol.WriteLine ( 'Soyadı: ' + nesnem.soyadım ) ;
Konsol.WriteLine ( 'Sokak: ' + benimObject.address.street ) ;
Konsol.WriteLine ( 'Şehir: ' + nesnem.adres.şehir ) ;


Konsol.ReadLine ( ) ;
}
}

genel sınıf Rootobject
{
genel dize ilkAdı { elde etmek; ayarlamak ; }
genel dize soyadı { elde etmek; ayarlamak ; }
genel adres adresi { elde etmek; ayarlamak ; }
}

genel sınıf Adresi
{
halka açık sokak { elde etmek; ayarlamak ; }
halka açık dizi şehri { elde etmek; ayarlamak ; }
}
}

Yukarıdaki kod nasıl kullanılacağını gösterir Newtonsoft.Json NuGet paketi ile seri durumdan çıkarmak A JSON dizesini bir C# sınıfına . JSON dizesi, bir kişinin adı ve soyadı ile adresi (sokak ve şehir) hakkındaki bilgileri içerir. C# sınıfları olarak Rootobject ve Address sınıfları, JSON verilerinin yapısını oluşturur.

bu JsonConvert.DeserializeObject yöntem, bir JSON dizesini bir diziye dönüştürmek için kullanılır. kök nesne misal. Veriler daha sonra, özniteliklerine erişilerek konsolda görüntülenir. kök nesne ve Adres sınıfları. bu Konsol.ReadLine programı sonlandırmadan önce durdurmak için kullanılır.

Çıktı

JSON'u C#'a Dönüştürmenin Diğer Yolları

Ayrıca kopyalayabilirsiniz JSON verileri panoya kopyalayın ve bir JSON'dan C# sınıf oluşturucuya C# sınıfını oluşturmak için. Çevrimiçi olarak birkaç araç var, örneğin Json2CSharp Ve Hızlı Tip , C# sınıfınızı oluşturmanıza yardımcı olabilir JSON veri. Yapıştır JSON verileri uygun alana yerleştirin ve aracın sizin için C# sınıfını oluşturmasına izin verin. Bu yaklaşım basit ve hızlıdır. Ancak, öğrenme amaçları için ilk yöntemi izlemelisiniz.

Çözüm

JSON verilerini bir C# sınıfına dönüştürme analiz etmeyi içerir JSON verileri, karşılık gelen bir C# sınıfı oluşturma ve JSON verilerinin serisini C# sınıfı nesnesine kaldırma. ile çalışırken bu işlem faydalı olabilir. JSON C# uygulamalarında verilerin okunmasını, işlenmesini ve web hizmetlerine veya API'lere gönderilmesini kolaylaştırır. Hızlı çevirmek için JSON'dan C#'a gibi çeşitli web araçlarını da kullanabilirsiniz. Json2CSharp Ve Hızlı Tip .