LINQ Quantifiers Operators

LINQ Quantifier Operators


مشغّلات الكميات (Quantifiers) في LINQ بتُستخدم للتحقّق من حالة العناصر داخل مجموعة، زي:

  • All → هل كل العناصر تحقق شرط؟
  • Any → هل فيه عنصر واحد على الأقل يحقق شرط؟
  • Contains → هل فيه عنصر معين موجود في المجموعة؟


✅ 1. All

بتتحقق إذا كانت جميع العناصر تحقق شرط.


int[] numbers = { 10, 20, 30, 40 };

bool result = numbers.All(n => n > 5);
Console.WriteLine(result); // True


✅ 2. Any

بتتحقق إذا كان فيه عنصر واحد على الأقل يطابق الشرط.


int[] numbers = { 10, 20, 30, 40 };

bool result = numbers.Any(n => n > 35);
Console.WriteLine(result); // True

كمان ممكن تستخدمها بدون شرط:


List<string> names = new List<string>();

bool hasElements = names.Any();
Console.WriteLine(hasElements); // False


✅ 3. Contains

بتتحقق إذا كانت المجموعة تحتوي على عنصر معين بالقيمة.


int[] numbers = { 10, 20, 30, 40 };

bool result = numbers.Contains(30);
Console.WriteLine(result); // True


🧩 مثال مع الكائنات (Objects)


public class Student
{
    public int ID { get; set; }
    public string Name { get; set; }
    public int Marks { get; set; }
}

List<Student> studentList = new List<Student>()
{
    new Student() { ID = 1, Name = "Ahmed", Marks = 80 },
    new Student() { ID = 2, Name = "Sara", Marks = 95 },
    new Student() { ID = 3, Name = "Mahmoud", Marks = 60 }
};

bool allPassed = studentList.All(s => s.Marks >= 50);
bool hasTopper = studentList.Any(s => s.Marks > 90);


💡 ملاحظات:

  • All() → ترجع true فقط لو كل العناصر تطابق الشرط.
  • Any() → ترجع true لو عنصر واحد فقط طابق الشرط.
  • Contains() → تبحث عن عنصر محدد بقيمته في المجموعة.


تعليقات

المشاركات الشائعة من هذه المدونة

C# - Arrays

Entity Framework - ما هو ORM؟ ونبذة عن Dapper وNHibernate

Entity Framework - مقدمة عن Entity Framework