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; }
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; }