我有一些代码,其中我正在进行某些奇怪的操作,以从SortedList中获取信息并将其放回另一个SortedList中。我执行where子句,然后必须逐个将所有KeyValuePairs放回新的SortedList中。
这肯定不是最有效或推荐的方法,但我似乎找不到更好的方法。
以下是代码:
SortedList<DateTime, CalendarDay> most_days =
new SortedList<DateTime, CalendarDay>();
List<KeyValuePair<DateTime, CalendarDay>> days = this.all_days.Where (
n => n.Value.IsRequested || n.Value.IsApproved
).ToList();
foreach (KeyValuePair<DateTime, CalendarDay> kvp in days)
most_days.Add(kvp.Key, kvp.Value);
有什么想法可以让这个更简洁明了(俗话说得好,少即是多)?
谢谢,
乔纳森