В моей базе данных есть таблица SQL, в которой хранится курс определенной валюты. Я хочу вставить массив всех словарных данных, которые я собрал с URL.
Используя сущность-структуру, я автоматически создаю класс сущности таблицы:
public partial class tblCurrencyRates
{
public int Id { get; set; }
public string CURRENCYCODE { get; set; }
public string RATE { get; set; }
public Nullable<System.DateTime> LAST_UPDATE { get; set; }
}
Это моя функция, котораявзятие всех курсов исторических данных определенной валюты:
public static void downloadFileByTypeCurrencyAndDateRange()
{
string curr = "01"; // for usd dollar
DateTime startDate = DateTime.Parse("01/01/2005");
DateTime endDate = DateTime.Parse(DateTime.Now.ToString());
XmlReader reader = null;
XmlSerializer serializer = new XmlSerializer(typeof(CURRENCIES));
Dictionary<DateTime, Dictionary<string, CURRENCY>> dict = new Dictionary<DateTime, Dictionary<string, CURRENCY>>();
for (DateTime date = startDate; date <= endDate; date = date.AddDays(1))
{
string url = string.Format("{0}?rdate={1}{2}{3}&curr={4}", URL, date.Year, date.Month.ToString("d2"), date.Day.ToString("d2"),curr);
reader = XmlReader.Create(url);
CURRENCIES currencies = (CURRENCIES)serializer.Deserialize(reader);
Dictionary<string, CURRENCY> tempDict = currencies.CURRENCY
.GroupBy(x => x.CURRENCYCODE, y => y)
.ToDictionary(x => x.Key, y => y.FirstOrDefault());
if(tempDict.Count!=0)
dict.Add(date, tempDict);
}
}
Кроме того, у меня есть эти справочные классы, но я не уверен, что они мне нужны:
public class CURRENCIES
{
[XmlElement]
public List<CURRENCY> CURRENCY { get; set; }
public string LAST_UPDATE { get; set; }
}
public class CURRENCY
{
public string CURRENCYCODE { get; set; }
public string RATE { get; set; }
}
Я хочу создать списокtblCurrencyRates и добавить диапазон в мою таблицу, но как я могу преобразовать словарь в мой список tblCurrencyRates ?