में संग्रहों का संग्रह कैसे विलय करें I IEnumerable<T>
में संलयन करने में सक्षम होना चाहते हैं (यानी सभी व्यक्तिगत संग्रह एक में विलय करें)। Union
ऑपरेटर केवल दो संग्रहों पर लागू होते हैं। कोई उपाय?लिंक
Q
लिंक
45
A
उत्तर
82
प्रयास करें
var it = GetTheNestedCase();
return it.SelectMany(x => x);
SelectMany एक LINQ परिवर्तन जो अनिवार्य रूप से कहते हैं, "के लिए एक संग्रह में प्रत्येक आइटम एक संग्रह के तत्वों लौटने" है। यह एक तत्व को कई में बदल देगा (इसलिए SelectMany)। एक फ्लैट सूची में संग्रह के संग्रह को तोड़ने के लिए यह बहुत अच्छा है।
13
var lists = GetTheNestedCase();
return
from list in lists
from element in list
select element;
सी # 3.0 क्वेरी अभिव्यक्ति वाक्यविन्यास का उपयोग करके ऐसा करने का एक और तरीका है।
LINQ कभी भी मुझे आश्चर्यचकित करने में विफल रहता है कि यह बॉक्स से क्या कर सकता है। :) – neminem