Bu yazıda T.C. Merkez Bankası tarafından yayınlanan döviz kurlarını almak için yazdığım C# kütüphanesinden ve nasıl kullanıldığından bahsedeceğim.
Github sayfasına buradan ulaşabilirsiniz.
İndirmek için: https://github.com/guvensahin/TRYExchRate/archive/master.zip
Neler Yapabiliyor ?
- Bu kütüphane ile belirttiğiniz tarihe ait döviz kurlarını çekebilirsiniz.
- TCMB sitesinde kuru yayınlanan tüm para birimlerini alabilirsiniz.
- TCMB sitesinde yayınlanan tüm kur tipleri için kullanabilirsiniz. Bunlar: Döviz alış, Döviz satış, Efektik alış ve Efektik satış’dır.
- Eğer belirttiğiniz tarih TCMB’nin kur yayınlamadığı bir tarih ise (resmi tatil, hafta sonu, yarım iş günü vb) sınıf kur yayınlanan en yakın tarihi otomatik seçer.
Nasıl Kullanılır ?
Projenin içinde kur sınıfı ve bu sınıfı kullanan örnek console application projesi bulunuyor.
İndirdiğiniz proje içinde “src/TRYExchRate/TRYExchRate.cs” adresinde yer alan sınıfı kendi projenize dahil ettikten sonra aşağıdaki gibi çalıştırabilirsiniz.
TRYExchRate helper = new TRYExchRate(new DateTime(2016,12,30));
helper.LoadExchRate();
decimal usdExhRate = helper.GetExchRate("USD", ExchRateType.ForexBuying);
- “LoadExchRate” method’u çalıştığında TCMB’nin sitesinden ilgili tarihe ait tüm kurlar çekilir ve sınıfın içine kaydedilir.
- Bu aşamadan sonra “GetExchRate” method’u ile para birimi ve kur tipi belirterek çekilen kurları okuyabilirsiniz.
Örnek
İndirdiğiniz örnek console application projesini visual studio ile açıp direkt run edebilirsiniz. Run ettiğinizde aşağıdaki gibi bir çıktı alacaksınız:
TRYExchRate helper = new TRYExchRate(DateTime.Now.Date);
helper.LoadExchRate();
Console.Write("İstenilen kur tarihi: " + helper.CurrencyDate.Date);
Console.WriteLine("");
Console.Write("Alınan kur tarihi: " + helper.ActualCurrencyDate.Date);
Console.WriteLine("");
Console.WriteLine("Api linki: " + helper.ApiUrl);
Console.WriteLine("");
// USD
Console.WriteLine("USD - Döviz Alış: " + helper.GetExchRate("USD", ExchRateType.ForexBuying).ToString());
Console.WriteLine("USD - Döviz Satış: " + helper.GetExchRate("USD", ExchRateType.ForexSelling).ToString());
Console.WriteLine("USD - Efektif Alış: " + helper.GetExchRate("USD", ExchRateType.BanknoteBuying).ToString());
Console.WriteLine("USD - Efektif Satış: " + helper.GetExchRate("USD", ExchRateType.BanknoteSelling).ToString());
Console.WriteLine("");
// diğer para birimleri
Console.WriteLine("EUR - Döviz Alış: " + helper.GetExchRate("EUR", ExchRateType.ForexBuying).ToString());
Console.WriteLine("GBP - Döviz Alış: " + helper.GetExchRate("GBP", ExchRateType.ForexBuying).ToString());
Console.WriteLine("CAD - Döviz Alış: " + helper.GetExchRate("CAD", ExchRateType.ForexBuying).ToString());
Console.ReadLine();