В C # 2.0 вы должны использовать либо цикл, либо LINQ для бедного человека с кодом, который выглядит следующим образом:
Linq(dic.Values).SelectMany(delegate(List<foo> list) { return list; }).ToList()
Где вы определяете Linq () как
static PoorMansLinq<T> Linq<T>(IEnumerable<T> source)
{
return new PoorMansLinq<T>(source);
}
Я заметил, что первая строка в настоящее время не работает, и я отправил обновление, чтобы исправить это.В то же время вы можете использовать следующее в качестве обходного пути:
Linq(Linq(dic.Values).SelectMany(delegate(List<foo> list) { return list; })).ToList()
Вы также можете использовать LinqBridge и напрямую вызывать Enumerable, но без C # 3.0 это громоздко.