LINQ Sum Method
LINQ Sum Method
دالة Sum()
في LINQ تُستخدم لحساب مجموع القيم الرقمية داخل مجموعة زي List
أو Array
أو أي IEnumerable
.
وهي واحدة من دوال التجميع (Aggregation) في LINQ.
✅ مثال 1: جمع عناصر قائمة أعداد
List<int> numbers = new List<int>() { 10, 20, 30, 40 };
var total = numbers.Sum();
Console.WriteLine("Sum: " + total); // Sum: 100
✅ مثال 2: جمع بعد تصفية العناصر
var sumEven = numbers.Where(n => n % 2 == 0).Sum();
Console.WriteLine("Sum of Even Numbers: " + sumEven); // Sum of Even Numbers: 100
🧩 مثال 3: جمع خصائص من كائنات (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 = 90 },
new Student() { ID = 3, Name = "Mahmoud", Marks = 70 }
};
var totalMarks = studentList.Sum(s => s.Marks);
Console.WriteLine("Total Marks: " + totalMarks); // Total Marks: 240
✅ التعامل مع Nullable Values
public class Student
{
public int ID { get; set; }
public string Name { get; set; }
public int? Marks { get; set; }
}
var total = studentList.Sum(s => s.Marks ?? 0);
📌 استخدمنا ?? 0
عشان نستبدل القيم null
بـ 0 أثناء الجمع.
💡 ملاحظات هامة:
Sum()
بترجع 0 لو القائمة فاضية.- ممكن تستخدمها مع الأعداد (int, long, float, double, decimal).
- ممكن تكتبها بـ Method Syntax أو Query Syntax.
تعليقات
إرسال تعليق