Я создал словарь, состоящий из DateTime в качестве ключа и пользовательского класса для значения.
class Class2
{
public decimal Value1 { get; set; }
public decimal Value2 { get; set; }
public decimal Value3 { get; set; }
}
class TestClass
{
public static void Main(string[] args)
{
var dict = new Dictionary<DateTime, Class2>();
dict.Add(new DateTime(2014, 6, 1), new Class2() { Value1 = 1, Value2 = 2, Value3 = 3 });
dict.Add(new DateTime(2014, 6, 2), new Class2() { Value1 = 4, Value2 = 5, Value3 = 6 });
dict.Add(new DateTime(2014, 6, 3), new Class2() { Value1 = 10, Value2 = 20, Value3 = 40 });
dict.Add(new DateTime(2014, 6, 4), new Class2() { Value1 = -5, Value2 = -6, Value3 = -8 });
// form a list consisting of Value1 and pass this list to a function for processing
}
}
В строке комментариев я хочу выбрать некоторые конкретные точки данных для Value1 и сформировать список. Эти критерии выбора точек данных будут основаны на времени (именно поэтому мне нужно поле DateTime). Этот список будет передан другой функции для дальнейшей обработки.
Мой вопрос двоякий:
Должен ли я использовать словарь для хранения такого рода данных? Я видел другие сообщения, и некоторые говорят об использовании SortedList. Данные, которые я собираюсь добавить в эти классы-контейнеры, будут располагаться в последовательном порядке (по времени).
Как лучше всего создать список (из Value1)? Я мог бы создать отдельный список с нуля, но я хотел бы знать, есть ли какая-либо лучшая альтернатива, кроме этой (учитывая, что я уже сохранил данные в экземпляре Dictionary).