private bool HasDateToDatabase(DateTime baslangic) { bool result = false; DovizDBContext db = new DovizDBContext(); #region 1.Yöntem //List<DateTime> tarihler = (from k in db.Kurlar // select k.Tarih).Distinct().ToList(); //foreach (DateTime tarih in tarihler) //{ // if (tarih.Date == baslangic.Date) // { // result = true; // } //} #endregion #region 2.Yöntem DateTime tarih = (from k in db.Kurlar where k.Tarih == baslangic select k.Tarih).FirstOrDefault(); if (tarih != DateTime.MinValue) { result = true; } #endregion return(result); }
private void KurTipleriniYukle() { clbKurlar.Items.Clear(); DovizDBContext db = new DovizDBContext(); IEnumerable <KurTipi> kurtipleri = from kt in db.KurTipleri orderby kt.Isim ascending select kt; //kurtipleri = kurtipleri.Take(10); foreach (KurTipi kt in kurtipleri) { clbKurlar.Items.Add(kt); } }
private void btnVtSorgula_Click(object sender, EventArgs e) { DovizDBContext db = new DovizDBContext(); List <string> secilenKodlar = new List <string>(); foreach (var item in clbKurlar.CheckedItems) { KurTipi kt = item as KurTipi; secilenKodlar.Add(kt.Kod); } var sonuclar = from k in db.Kurlar where k.Tarih >= dtpBasTar.Value.Date && k.Tarih <= dtpBitTar.Value.Date && secilenKodlar.Contains(k.Kod) select k; dgvSonuclar.DataSource = sonuclar.ToList(); }
private void KurIsimVeKodlariKaydet() { DovizDBContext db = new DovizDBContext(); if (db.KurTipleri.Count() == 0) { XDocument xDoc = XDocument.Load("http://www.tcmb.gov.tr/kurlar/today.xml"); XElement tarih_date = xDoc.Root; foreach (XElement cur in tarih_date.Elements("Currency")) { string kod = cur.Attribute("Kod").Value; string isim = cur.Element("Isim").Value; // isim == null ise "..." koyar. //isim = isim ?? "..."; // Kısa if.. => (koşul) ? {doğru ise} : {aksi halde} isim = (string.IsNullOrEmpty(isim) == true) ? "..." : isim; // old-version : string ad = string.Format("adınız : {0}", isim); // new-version : ad = $"adınız : {isim}"; if (string.IsNullOrEmpty(kod) == false) { KurTipi kt = new KurTipi() { Kod = kod, Isim = isim }; db.KurTipleri.Add(kt); } } db.SaveChanges(); } }
private void KurVerisiCek(string url) { XDocument xDoc = null; try { xDoc = XDocument.Load(url); } catch (System.Net.WebException wex) { if (wex.Message.Contains("404") == true) { // Tatil günü hatası.. } return; } catch (Exception ex) { return; } // TODO : Burada verinin doğru gelip gelmediği kontrol edilecek. XElement tarih_date = xDoc.Root; DateTime tarih = DateTime.Parse(tarih_date.Attribute("Tarih").Value); List <XElement> kurlar = (from c in tarih_date.Elements("Currency") select c).ToList(); DovizDBContext db = new DovizDBContext(); foreach (XElement kur in kurlar) { string kod = kur.Attribute("Kod").Value; string isim = kur.Element("Isim").Value; string cname = kur.Element("CurrencyName").Value; string unit = kur.Element("Unit").Value; string fb = kur.Element("ForexBuying").Value.Replace(".", ","); string fs = kur.Element("ForexSelling").Value.Replace(".", ","); string bb = kur.Element("BanknoteBuying").Value.Replace(".", ","); string bs = kur.Element("BanknoteSelling").Value.Replace(".", ","); isim = (string.IsNullOrEmpty(isim)) ? "..." : isim; cname = (string.IsNullOrEmpty(cname)) ? "..." : cname; unit = (string.IsNullOrEmpty(unit)) ? "0" : unit; fb = (string.IsNullOrEmpty(fb)) ? "0" : fb; fs = (string.IsNullOrEmpty(fs)) ? "0" : fs; bb = (string.IsNullOrEmpty(bb)) ? "0" : bb; bs = (string.IsNullOrEmpty(bs)) ? "0" : bs; Kur kurNesnesi = new Kur() { Tarih = tarih, Kod = kod, Isim = isim, CurrencyName = cname, Unit = int.Parse(unit), ForexBuying = decimal.Parse(fb), ForexSelling = decimal.Parse(fs), BanknoteBuying = decimal.Parse(bb), BanknoteSelling = decimal.Parse(bs) }; db.Kurlar.Add(kurNesnesi); } // Eğer bir hata varsa liste olarak verir. var errorList = db.GetValidationErrors(); if (errorList.Count() > 0) { // Hata var demektir. foreach (var err in errorList) { foreach (var item in err.ValidationErrors) { // Hataların hepsi gösterilir. //MessageBox.Show( // item.PropertyName + Environment.NewLine + item.ErrorMessage); MessageBox.Show(item.ErrorMessage); } } // Hata olduğu için insert zaten edemez. return; } try { db.SaveChanges(); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
private void btnWebSorgula_Click(object sender, EventArgs e) { // tarih1 ve tarih2 bugünden büyük seçilemez. // Eğer tarih1, tarih2'den büyükse hiçbirşey yapmadan kullanıcıya uyarı vermeli. Tarihleri değiştirmeye zorlamalı. // tarih1'den itibaren 1 er gün olarak tarih arttırılarak döviz kuru ilgili url oluşturularak xml çekilmeli. XML içinden tüm kurlar okunarak veritabanına insert edilir. // Veritabanından günler çekilir ve kullanıcının seçtiği günler elimizdeki günlerde yoksa veriler netten çekilir.(Aynı zamanda haftasonu değilse..) XDocument xDoc = XDocument.Load("http://www.tcmb.gov.tr/kurlar/today.xml"); XElement tarih_date = xDoc.Root; DateTime tarih = DateTime.Parse(tarih_date.Attribute("Tarih").Value); XElement usd = (from c in tarih_date.Elements("Currency") where c.Attribute("Kod").Value == "USD" select c).FirstOrDefault(); Kur kurNesnesi = new Kur() { Tarih = tarih, Kod = usd.Attribute("Kod").Value, Isim = usd.Element("Isim").Value, CurrencyName = usd.Element("CurrencyName").Value, Unit = int.Parse(usd.Element("Unit").Value), ForexBuying = decimal.Parse(usd.Element("ForexBuying").Value.Replace(".", ",")), ForexSelling = decimal.Parse(usd.Element("ForexSelling").Value.Replace(".", ",")), BanknoteBuying = decimal.Parse(usd.Element("BanknoteBuying").Value.Replace(".", ",")), BanknoteSelling = decimal.Parse(usd.Element("BanknoteSelling").Value.Replace(".", ",")) }; //kurNesnesi.Isim = null; //kurNesnesi.CurrencyName += "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"; DovizDBContext db = new DovizDBContext(); db.Kurlar.Add(kurNesnesi); // Eğer bir hata varsa liste olarak verir. var errorList = db.GetValidationErrors(); if (errorList.Count() > 0) { // Hata var demektir. foreach (var err in errorList) { foreach (var item in err.ValidationErrors) { // Hataların hepsi gösterilir. //MessageBox.Show( // item.PropertyName + Environment.NewLine + item.ErrorMessage); MessageBox.Show(item.ErrorMessage); } } // Hata olduğu için insert zaten edemez. return; } try { db.SaveChanges(); } catch (Exception ex) { MessageBox.Show(ex.Message); } }