जब मैं Darins सुझाव यहां देखा ..LINQ एक्सटेंशन 3.5 बनाम 4.0 में चुनें?
IEnumerable<Process> processes =
new[] { "process1", "process2" }
.SelectMany(Process.GetProcessesByName);
(process.getprocessesbyname())
.. मैं थोड़ा intrigued गया था और मैं में VS2008 इसे करने की कोशिश .NET 3.5 के साथ - और यह संकलन नहीं किया जब तक कि मैं बदल गया यह ..
IEnumerable<Process> res =
new string[] { "notepad", "firefox", "outlook" }
.SelectMany(s => Process.GetProcessesByName(s));
कुछ Darins उत्तर पढ़ चुके करने के लिए इससे पहले कि मैं शक था कि यह मेरे था कि समस्या थे, और जब मैं बाद में एक VS2010 with.NET 4.0 पर मेरे हाथ मिला - के रूप में उम्मीद - मूल सुझाव काम किया खूबसूरती से।
मेरा प्रश्न है: 3.5 से 4.0 तक क्या हुआ है जो यह (नया वाक्यविन्यास) संभव बनाता है? क्या यह एक्सटेंशन मोड है जो लैम्ब्डा सिंटैक्स के लिए विस्तारित (हम्म) या नए नियम हैं?
में काम करता है जब आप .NET 3.5 के तहत यह संकलन करने की कोशिश की, क्या संकलक त्रुटि मिला? – Jacob
@ जैकोब - अच्छा बिंदु :) विधि 'System.Linq.Enumerable.SelectMany (System.Collections.Generic.IEnumerable , System.Func >) 'उपयोग से अनुमानित नहीं किया जा सकता है। प्रकार तर्कों को स्पष्ट रूप से निर्दिष्ट करने का प्रयास करें। –
Moberg
कूल! जब यह हुआ तो मैं हमेशा नाराज था। यह जानना अच्छा है कि यह तय किया गया है :) +1 – leppie