मैं किसी के लिए निम्न foreach सुविधा समझा कर रहा हूँ, तो यह कहना सही है कि # 2 "LINQ foreach दृष्टिकोण" है या यह सिर्फ एक "List<T>
विस्तार विधि" है कि आधिकारिक तौर पर LINQ साथ संबद्ध नहीं है है ?सी # भाषा का कौन सा हिस्सा है .एच()?
var youngCustomers = from c in customers
where c.Age < 30
select c;
//1. traditional foreach approach
foreach (var c in youngCustomers)
{
Console.WriteLine(c.Display());
}
//2. LINQ foreach approach?
youngCustomers.ToList().ForEach(c => Console.WriteLine(c.Display()));
एरिक लिपर्ट http://blogs.msdn.com/b/ericlippert/archive/2009/05/18/foreach-vs-foreach.aspx –
से इस पोस्ट को चेक करें यह ध्यान देने योग्य है कि आपका # 2 लूप होगा आइटम दो बार - एक बार सूची बनाने के लिए, और एक बार ForEach विधि के लिए।यदि आप कोड की उस शैली का उपयोग करना चाहते हैं, जो पूरी तरह से वैध है, तो आप IENumerable पर अपनी खुद की ForEach एक्सटेंशन विधि लिखने से बेहतर हैं। –