Element Operators في LINQ
LINQ Element Operators
في هذا الدرس، سنتعرّف على ما يُعرف بـ Element Operators في LINQ، وهي مجموعة من الدوال تُستخدم لاستخراج عنصر فردي من مجموعة، بناءً على موقعه أو شرط معين.
ما هي Element Operators؟
First()
FirstOrDefault()
Last()
LastOrDefault()
Single()
SingleOrDefault()
ElementAt()
ElementAtOrDefault()
1. First() – تُرجع أول عنصر، ترمي استثناء لو القائمة فاضية.
var result = numbers.First();
2. FirstOrDefault() – تُرجع أول عنصر أو default إذا فاضي.
var result = numbers.FirstOrDefault(n => n > 10);
3. Last() / LastOrDefault() – نفس فكرة First لكن من النهاية.
var result = numbers.Last();
4. Single() / SingleOrDefault() – تُستخدم لما تتوقع عنصر واحد فقط.
var result = numbers.Single(n => n == 5);
5. ElementAt() / ElementAtOrDefault() – للوصول لعنصر حسب الفهرس.
var result = numbers.ElementAt(2);
مثال تطبيقي:
List<int> numbers = new List<int>() { 5, 10, 15, 20, 25 };
// First:
Console.WriteLine(numbers.First()); // 5
// Last:
Console.WriteLine(numbers.Last()); // 25
// Single:
List<int> singleItemList = new List<int>() { 42 };
Console.WriteLine(singleItemList.Single()); // 42
// ElementAt:
Console.WriteLine(numbers.ElementAt(3)); // 20
جدول مقارنة:
الدالة | ترجع Default إذا مفيش؟ | ترمي استثناء لو أكتر من عنصر؟ | تدعم شرط؟ |
---|---|---|---|
First() | ❌ | ❌ | ✅ |
FirstOrDefault() | ✅ | ❌ | ✅ |
Last() | ❌ | ❌ | ✅ |
LastOrDefault() | ✅ | ❌ | ✅ |
Single() | ❌ | ✅ | ✅ |
SingleOrDefault() | ✅ | ✅ | ✅ |
ElementAt() | ❌ | ❌ | ❌ |
ElementAtOrDefault() | ✅ | ❌ | ❌ |
تعليقات
إرسال تعليق