Tôi có một bộ sưu tập IEnumerable<IEnumerable<T>>
mà tôi muốn chuyển đổi thành một bộ sưu tập thứ nguyên duy nhất. Có thể đạt được điều này với một phương pháp mở rộng chung không? Ngay bây giờ tôi đang làm điều này để đạt được nó.Làm thế nào để chuyển đổi một IEnumerable <IEnumerable <T>> thành IEnumerable <T>
List<string> filteredCombinations = new List<string>();
//For each collection in the combinated results collection
foreach (var combinatedValues in combinatedResults)
{
List<string> subCombinations = new List<string>();
//For each value in the combination collection
foreach (var value in combinatedValues)
{
if (value > 0)
{
subCombinations.Add(value.ToString());
}
}
if (subCombinations.Count > 0)
{
filteredCombinations.Add(String.Join(",",subCombinations.ToArray()));
}
}
Nếu không thể có giải pháp chung, làm cách nào để tối ưu hóa điều này một cách thanh lịch.
các câu hỏi trong tiêu đề được trả lời ở đây: http: // stackoverflow. com/questions/1590723/flatten-list-in-linq –