У меня есть код старой школы, который выглядит следующим образом:
IList<KeyValuePair<string, ValuePair>> ServicePairs = new List<KeyValuePair<string, ValuePair>>();
// ...
foreach (KeyValuePair<string, string> Set in Services)
{
if (string.Format("{0} (Service)", Set.Value) == c.ColumnName)
{
ServicePairs.Add(new KeyValuePair<string, ValuePair>(c.Ordinal.ToString(), new ValuePair { Id = Set.Key, Title = Set.Value }));
}
}
Решарпер предлагает немного покрасить его, преобразовав его в следующее:
ServicePairs.AddRange(from Set in Services
where string.Format("{0} (Service)", Set.Value) == c.ColumnName
select new KeyValuePair<string, ValuePair>(
c.Ordinal.ToString(),
new ValuePair { Id = Set.Key, Title = Set.Value }));
То, что я хотел бы знать - откуда взялся этот AddRange()
метод - из Microsoft Prism или откуда-то еще?
ОБНОВЛЕНИЕ: Было отмечено, что это часть класса List<T>
. По-видимому, это не часть интерфейса IList<T>
, который был источником моего замешательства. Спасибо всем.