पाठ 5 / 26
Collections और LINQ
LINQ से collections को filter, transform और aggregate करें।
Collection पर query
LINQ (System.Linq) किसी भी collection में Where, Select और OrderBy जैसे methods जोड़ता है। ये pipeline की तरह पढ़े जाते हैं और आम तौर पर मूल list नहीं बदलते।
एक छोटी pipeline
सम संख्याएँ रखें, उनका वर्ग करें, फिर print करें। ToList() या loop के बिना query चलती ही नहीं।
var nums = new List<int> { 1, 2, 3, 4, 5, 6 };
var result = nums.Where(n => n % 2 == 0)
.Select(n => n * n)
.ToList();
Console.WriteLine(string.Join(", ", result));
Output:
4, 16, 36
Deferred execution की हैरानी
LINQ query हर बार enumerate करने पर दोबारा चलती है। अगर वह database छूती है या भारी है, तो एक बार ToList() करके list दोबारा उपयोग करें।
त्वरित जाँच: कौन-सा LINQ method शर्त पूरी करने वाले items ही रखता है?
- Select
- OrderBy
- GroupBy
- Where
Answer
Where — `Where` filter करता है; `Select` हर item को कुछ और बना देता है।