У меня есть Dictionary<string, XMLMessage>
, где XMLMessage - это структура:
private struct XMLMessage
{
public string Message { get; set; }
public DateTime TimeRead { get; set; }
}
Я буду использовать словарь, подобный этому:
storedMessages["1X"] = new XMLMessage() { Message = "<XML>1X</XML>", TimeRead = DateTime.Now };
storedMessages["1Y"] = new XMLMessage() { Message = "<XML>1Y</XML>", TimeRead = DateTime.Now };
Между объектами словаря, присваивающими значение, будет промежуток в секундах, следовательно, объект DateTime.
В какой-то момент мне нужно сохранить ключи в Словаре, но самое старое значение должно быть пустым.
Я пробовал это, но, похоже, не совсем правильно.
storedMessages.Where(x => x.Key.Contains("1")).OrderBy(s => s.Value.TimeRead).Skip(1)
Спасибо
ОБНОВЛЕНИЕ: Я думаю, что могу сделать что-то подобное, но хотел узнать ваше мнение
var j = storedMessages.Where(x => x.Key.Contains("1")).OrderByDescending(s => s.Value.TimeRead).First().Key;
storedMessages[j] = new XMLMessage();