Entity Framework - استخدام Where وSelect وOrderBy

Entity Framework Core - استخدام Where وSelect وOrderBy

تُستخدم LINQ في EF Core لكتابة استعلامات بطريقة آمنة وقوية ضمن كود C#، بدلاً من كتابة استعلامات SQL يدوية.

---

🔹 أهم الدوال المستخدمة في استعلامات LINQ:

  • Where: لتصفية النتائج (فلترة البيانات).
  • Select: لاختيار حقول أو إنشاء شكل جديد للبيانات.
  • OrderBy وOrderByDescending: لترتيب النتائج تصاعديًا أو تنازليًا.
---

🔹 مثال عملي على استخدام Where:


// جلب الطلاب الذين عمرهم أكبر من 20 سنة

var students = await dbContext.Students
    .Where(s => s.Age > 20)
    .ToListAsync();
---

🔹 مثال عملي على استخدام Select:


// جلب أسماء الطلاب فقط

var studentNames = await dbContext.Students
    .Select(s => s.Name)
    .ToListAsync();
---

🔹 مثال عملي على استخدام OrderBy:


// ترتيب الطلاب حسب الاسم

var studentsOrdered = await dbContext.Students
    .OrderBy(s => s.Name)
    .ToListAsync();
---

🔹 مثال عملي على استخدام OrderByDescending:


// ترتيب الطلاب حسب العمر تنازليًا

var studentsOrderedDesc = await dbContext.Students
    .OrderByDescending(s => s.Age)
    .ToListAsync();
---

🔹 شرح إضافي مهم:

  • Where: يستخدم للفلترة بناءً على شرط واحد أو أكثر.
  • Select: يستخدم لاختيار حقول معينة بدلاً من تحميل الكائن بالكامل، مما يحسن الأداء.
  • OrderBy: وOrderByDescending: يستخدمان للترتيب حسب أي حقل أو عدة حقول.
---

🔹 ملاحظة إضافية:

✅ يمكنك دمج أكثر من أمر معًا بسهولة باستخدام LINQ (مثلاً: Where + OrderBy + Select).

---

✅ بفضل LINQ، أصبح استعلام البيانات في EF Core أكثر أمانًا ووضوحًا وأداءً أعلى مقارنة بالاستعلامات النصية التقليدية.

تعليقات

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

C# - Arrays

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

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