C# ile JSON verisinin Deserilize edilmesi

csharp
  • Turgay Can
  • Tarih

    09 Aug, 2014
  • Yorum

    0
  • Görüntüleme

    1887
  • İndirme

    0

C# ile JSON verisinin Deserilize edilmesi

Merhabalar,

Aşağıdaki api'den anlık döviz bilgisi bulunmaktadır.

http://api.piyasa.com/json/?kaynak=doviz_guncel_serb

Bu bilgiler JSON formatında uzak sunucuda bulunmaktadır. Buradaki verileri çekip kendi sitemizde yada uygulamamızda nasıl gösterebilirizin cevabını vermiş olacağım.

Yapılacak işlemler sırasıyla;

1 - JSON veri modelini çıkarmak
2 - Uzak sunucudaki (API URL) verinin çekilmesi
3 - Çekilen verinin deserilize edilmesi
4 - Deserilize edilen verinin model'imize uyarlanması
5 - Parse ettiğimiz verinin gösterilmesi

1 - JSON Veri Model Sınıfı

    [{"foex":"USD","buy":"2.1360","sell":"2.1370","change":"-0.790","time":"14:20"},
{"foex":"EUR","buy":"2.8640","sell":"2.8650","change":"-0.865","time":"14:20"}]

Model sınıfımız

public class JSonModel { 

private string foex; //get,set 
private string buy; //get,set 
private string sell; //get,set 
private string change; //get,set 
private string time; //get,set 

}

2 - URL'den verinin çekilmesi

WebClient sınıfı ile veri çekilmesi işlemini yapıyoruz

string json = var json = new WebClient().DownloadString(" http://api.piyasa.com/json/?kaynak=doviz_guncel_serb");  

3,4 - Verinin deserilize edilmesi ve modelimize uyarlanması

JSON verisini deserilize etmek için linkteki API'yi kullanıyoruz.

API LINK

API yardımı ile WebClient sınıfı ile çektiğimiz veriyi DeserializeObject metodunun conctructorına parametre olarak veriyoruz. API bizim için deserilize işlemini yapıyor.

List<JSonModel > models = JsonConvert.DeserializeObject<JSonModel >(json );  

5 - Parse ettiğimiz verinin gösterilmesi

    foreach (string model in models )  
        { 
                //modeli yazdırabilirsiniz. 
            Console.WriteLine(model.foex + "  :  "  + model.buy  + " : " + model.sell + " : " 
+ model.change + " : " + model.time); 
        }  

0 Yorum..

Yorum yapmak için "Giriş yapın" yada "Misafir üye" olarak yorum yapabilirsiniz.

Yorum Yap