2010-07-12 3 views
9

निर्माण करने के लिए स्ट्रिंग की एक सूची इस संभव है, या मैं अभी जिस तरह बहुत ज्यादा मेरे कोड को छोटा करने की कोशिश कर रहा हूँ?ट्रिम() गतिशील क्वेरी भाषा का प्रयोग कर एक छंटनी IQueryable <string>

मैंने सोचा कि यह कुछ ऐसा हो सकता है:।

IQueryable<string> trimmedStrs = untrimmedStrsArr.AsQueryable<string>().All(s => s.Trim()); 

लेकिन वह अच्छा नहीं :(

उत्तर

35

का प्रयोग मुझे लगता है कि तुम सिर्फ चाहते हैं:।

IEnumerable<string> trimmed = untrimmedStrsArr.Select(s => s.Trim()); 

यदि आपके पास सूची या सरणी जैसे मेमोरी संग्रह हैं, तो आप IEnumerable<T> के लिए LINQ विधियों का उपयोग करके उनके साथ काम कर सकते हैं, क्योंकि ये प्रक्रिया डेटा स्मृति में है। डेटाबेस के साथ काम करते समय क्वेरीबल उपयोगी है (उदाहरण के लिए LINQ से SQL का उपयोग करना)।

आप MSDN पर विभिन्न विधियों पर एक अच्छा प्रलेखन पा सकते हैं। निम्नलिखित व्याख्या करनी चाहिए तुम क्यों Select बजाय All की जरूरत है:

  • All - निर्धारित करता है एक दृश्य के सभी तत्वों को एक शर्त को संतुष्ट है या नहीं।
  • Select - परियोजनाएं एक नए रूप में एक दृश्य के प्रत्येक तत्व।
2

All यह करने के लिए सही तरीका नहीं है है यह एक विधेय है, में हर आइटम अगर सच लौटने संग्रह हालत आप पैरामीटर में देने से मेल खाता है

IQueryable<string> trimmedStrs = untrimmedStrsArr.AsQueryable<string>().Select(s => s.Trim()); 
2

यह एक मेरे लिए काम करने के लिए लग रहा था:

IQueryable<string> trimmed = untrimmed.AsQueryable<string>().Select(m => m.Trim()); 
संबंधित मुद्दे