LINQ Any Method

LINQ Any Method


دالة Any() تُستخدم للتحقق إذا كانت هناك قيمة واحدة على الأقل تحقق شرطًا معينًا.

  • ترجع true إذا وُجد عنصر واحد على الأقل يطابق الشرط.
  • ترجع false إذا لم يوجد أي عنصر يحقق الشرط.


✅ مثال 1: مع أنواع بسيطة


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

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

bool result = numbers.Any(n => n > 100);
Console.WriteLine(result); // False


✅ استخدام Any بدون شرط


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

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


🧩 مثال 2: مع الكائنات (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 hasTopper = studentList.Any(s => s.Marks > 90);
Console.WriteLine("Has Topper: " + hasTopper); // True


✅ مثال متقدم: شرط مركب


bool result = studentList.Any(s => s.Marks < 70 && s.Name.StartsWith("M"));
Console.WriteLine(result); // True


💡 ملاحظات هامة:

  • Any() وسيلة فعّالة للتحقق من وجود بيانات.
  • أسرع من Where().Count() > 0 لأنها تتوقف عند أول تطابق.
  • ترجع false فورًا لو القائمة فاضية.


تعليقات

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

C# - Arrays

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

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