2012-12-08 3 views
49

की सूची से गुण की सूची प्राप्त करें।वर्तमान में मैं <code>foreach</code> पाश का उपयोग <code>object</code> संपत्तियों की एक सूची वापस करने के लिए वस्तुओं

class X 
{ 
    List<X> Z = GetXlist(); 
    List<String> r = new List<String>(); 

    foreach (var z in Z) 
    { 
     r.Add(z.A); 
    } 

    return r; 
} 

वहाँ एक रास्ता है कि मैं इस छोटा कर सकते हैं, ताकि मैं foreach पाश लिखने की जरूरत नहीं है है?

+0

आप पाश के लिए एक नहीं लिख रहे हैं। वहाँ एक अंतर यह है कि आप http://programmers.stackexchange.com/questions/178218/for-vs-foreach-vs-linq के बारे में पता होना चाहिए –

उत्तर

83

LINQ उत्तर है। आप इसे अपने ऑब्जेक्ट संग्रह से दूसरे प्रोजेक्ट में "प्रोजेक्ट" में उपयोग कर सकते हैं - इस मामले में ऑब्जेक्ट प्रॉपर्टी वैल्यू का संग्रह।

List<string> properties = objectList.Select(o => o.StringProperty).ToList(); 
+0

आसान ठीक है! धन्यवाद! –

5

आप LINQ इस्तेमाल कर सकते हैं:

List<X> Z = GetXlist(); 

List<String> r = Z.Select(z => z.A).ToList(); 

return r; 

या बस,

return GetXlist().Select(z => z.A).ToList(); 

अधिक के बारे में LINQ जानकारी प्राप्त करें। यह सुंदर उपयोगी है।

संबंधित मुद्दे