2013-05-09 12 views
5

का एक और सूची में भी है मैं अगले arhitecture है में है कि की संपत्ति का चयन करें। मैं एलिमेंटटाइट (स्ट्रिंग्स) की एक सूची प्राप्त करने का प्रयास कर रहा हूं जिसमें एक निश्चित पाठ है (मैंने इसे "बीज" कहा है)। मैं इसे एक टाइपहेड पूरा करना चाहता हूं। यहां मेरा प्रयास है:एक वस्तु वस्तुओं की एक सूची है जो वस्तुओं

List<Element> suggestedElements = someList.Where(s => s.elementDetails.Any(ss => ss.ElementTitle.Contains(seed))).ToList(); 
List<string> suggestions = suggestedElements .SelectMany(t => t.elementDetails.Select(x => x.ElementTitle)).ToList() }); // contains all ElementTitle, including those ElementTitle that don't contain the "seed"... 

मैं उन तत्वों से कैसे छुटकारा पा सकता हूं जिनमें बीज नहीं है?

उत्तर

12
List<string> suggestions = someList.SelectMany(x => x.elementDetails) 
            .Where(y => y.ElementTitle.Contains(seed)) 
            .Select(z => z.ElementTitle) 
            .ToList(); 

भी सरल:

List<string> suggestions = someList.SelectMany(x => x.elementDetails) 
            .Select(y => y.ElementTitle); 
            .Where(z => z.Contains(seed)) 
            .ToList(); 
+1

धन्यवाद आदमी! एक जादू की तरह काम करता है! – VladN

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