internal static List<Currency> GetListOfRates()
        {
            List<Currency> result = new List<Currency>();

            try
            {
                NBRB.ExRates rates = new NBRB.ExRates();
                DataSet dailyRates = rates.ExRatesDaily(DateTime.UtcNow);

                foreach (DataRow row in dailyRates.Tables[0].Rows)
                {
                    Currency temp = new Currency
                                {
                                    IsoNumber = row["Cur_Code"].ToString(),
                                    IsoName = row["Cur_Abbreviation"].ToString(),
                                    Abbreveature = row["Cur_QuotName"].ToString(),
                                    Rate = Convert.ToDecimal(row["Cur_OfficialRate"])
                                };
                    result.Add(temp);
                }
            }
            catch (Exception ex)
            {
                //TODO: не зажевать exception!
            }
            return result;
        }
Exemplo n.º 2
0
        private IEnumerable<CurrencyExRate> GetAll(DateTime date = default(DateTime))
        {
            var nbService = new NBRB.ExRates();

              var dateRequest = date == default(DateTime) || date > DateTime.Now ? nbService.LastDailyExRatesDate() : date;

              var todayResult = nbService.ExRatesDaily(dateRequest);

              return
              todayResult.Tables[0].AsEnumerable()
              .Select(
                  row =>
                      new CurrencyExRate((string)row[0], (int)row[1], (decimal)row[2], Int32.Parse((string)row[3]),
                          (string)row[4]));
        }
 public XmlDocument GetRateOfExchange()
 {
     /*
             Cur_QuotName – наименование валюты, содержащее номинал
             Cur_Scale – номинал
             Cur_OfficialRate – курс
             Cur_Code – цифровой код
             Cur_Abbreviation – буквенный код.
      */
     XmlDocument result = new XmlDocument();
     XmlNode rootElement = result.CreateElement("Result");
     result.AppendChild(rootElement);
     NBRB.ExRates rates = new NBRB.ExRates();
     DataSet dailyRates = rates.ExRatesDaily(DateTime.UtcNow);
     foreach (DataRow row in dailyRates.Tables[0].Rows)
     {
         XmlElement newRow = result.CreateElement("Currency");
         XmlElement QuotName = result.CreateElement("QuotName");
         QuotName.InnerText = row["Cur_QuotName"].ToString();
         XmlElement Scale = result.CreateElement("Scale");
         Scale.InnerText = row["Cur_Scale"].ToString();
         XmlElement OfficialRate = result.CreateElement("OfficialRate");
         OfficialRate.InnerText = row["Cur_OfficialRate"].ToString();
         XmlElement Code = result.CreateElement("Code");
         Code.InnerText = row["Cur_Code"].ToString();
         XmlElement Abbreviation = result.CreateElement("Abbreviation");
         Abbreviation.InnerText = row["Cur_Abbreviation"].ToString();
         newRow.AppendChild(QuotName);
         newRow.AppendChild(Scale);
         newRow.AppendChild(OfficialRate);
         newRow.AppendChild(Code);
         newRow.AppendChild(Abbreviation);
         rootElement.AppendChild(newRow);
     }
     return result;
 }