Onur Keçe

Masaüstü Yazılım Geliştirici

Web Geliştirici

0

Sepetinizde ürün bulunmuyor.

Onur Keçe

Masaüstü Yazılım Geliştirici

Web Geliştirici

Blog Post

C# Json Altın Bilgilerini Çekme

27 Temmuz 2021 C#
C# Json Altın Bilgilerini Çekme

Bu yazımızda C# ile Json kullanarak altın bilgilerini göstereceğiz. Yapacağımız projede timer yardımı ile 5 saniyede bir altın fiyatlarının güncel halini bize labellere yazdırarak gösterecektir.

İlk önce aşağıdaki şekilde projemi tasarladım.

Tasarımı hazırladıktan sonra kullanacağım json ise budur;

https://api.genelpara.com/embed/altin.json

Json formatını tarayıcıda ise şu şekilde gözükmektedir.

Daha sonra tarayıcıdaki kodları kopyalayıp https://json2csharp.com/ sitesine girip yapıştırdıktan sonra classlarımızı bize otomatik olarak oluşturacaktır.

Biz sadece bize gerekli olan classları yani gram, çeyrek, yarım ve cumhuriyet altın bilgilerini alacağız. dilerseniz siz hepsini alabilirsiniz.

Kodlara geçmeden önce Manage NuGet Packages’e girip Newtonsoft.Json kütüphanesini indirmeyi unutmayınız.

İlk önce bize gerekli olan classları alalım

public class GA
{
   public string satis { get; set; }
   public string alis { get; set; }
   public string degisim { get; set; }
}

public class C
{
   public string satis { get; set; }
   public string alis { get; set; }
   public string degisim { get; set; }
}

public class Y
{
   public string satis { get; set; }
   public string alis { get; set; }
   public string degisim { get; set; }
}

public class CMR
{
   public string satis { get; set; }
   public string alis { get; set; }
   public string degisim { get; set; }
}

public class Altin
{
   public GA GA { get; set; }
   public C C { get; set; }
   public Y Y { get; set; }
   public CMR CMR { get; set; }
}

Projemize Timer ekleyerek timer1_Tick olayına kodlarımızı yazalım.

string url = "https://api.genelpara.com/embed/altin.json";
HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest;
string jsonverisi = "";
using (HttpWebResponse response = request.GetResponse() as HttpWebResponse)
{
   StreamReader r = new StreamReader(response.GetResponseStream());
   jsonverisi = r.ReadToEnd();
}

Altin altin = JsonConvert.DeserializeObject<Altin>(jsonverisi);


lblAlisGramAltın.Text = altin.GA.alis;
lblAlisCeyrekAltin.Text = altin.C.alis;
lblAlisYarimAltin.Text = altin.Y.alis;
lblAlisCumhuriyet.Text = altin.CMR.alis;

lblSatisGramAltın.Text = altin.GA.satis;
lblSatisCeyrekAltin.Text = altin.C.satis;
lblSatisYarimAltin.Text = altin.Y.satis;
lblSatisCumhuriyet.Text = altin.CMR.satis;

lblFarkGramAltin.Text = altin.GA.degisim;
lblFarkCeyrekAltin.Text = altin.C.degisim;
lblFarkYarimAltin.Text = altin.Y.degisim;
lblFarkCumhuriyet.Text = altin.CMR.degisim;

Daha sonra Form yüklendiği zaman timer çalıştıralım ve projemizi bitirelim.

private void Form1_Load(object sender, EventArgs e)
{
    timer1.Start();
}

Sonuç

Etiketler: