C# MVC4-如何对foreach列表的结果求和?

C# MVC4-如何对foreach列表的结果求和?,c#,asp.net-mvc-4,C#,Asp.net Mvc 4,我的项目跟踪每个员工的休假时间。我想显示foreach结果上方使用的小时数总和。假期索引将停用所选员工的数据 模式1 public class Employee { public int EmployeeID { get; set; } public string LastName { get; set; } public string FirstMidName { get; set; } public virtual ICollec

我的项目跟踪每个员工的休假时间。我想显示foreach结果上方使用的小时数总和。假期索引将停用所选员工的数据

模式1

public class Employee
    {
        public int EmployeeID { get; set; }
        public string LastName { get; set; }
        public string FirstMidName { get; set; }

  public virtual ICollection<Vacation> Vacation { get; set; }
  }
型号2的控制器

public class VacationController : Controller
    {
        private Context db = new Context();

        //
        // GET: /Vacation/

        public ActionResult Index([Bind(Prefix = "id")]int employeeId)
        {
            var Employee = db.Employee.Find(employeeId);
            if (Employee != null)
            {
                return View(Employee);
            }
            return HttpNotFound();
        }
看法


@foreach(模型中的var项目){
@DisplayFor(modelItem=>item.Employee.LastName)
@DisplayFor(modelItem=>item.EventDate)
@DisplayFor(modelItem=>item.Hours)
@DisplayFor(modelItem=>item.Notes)
}

如果可以在控制器中设置另一个字段,则可以在将列表发送到视图之前对其求和

(使用LINQ扩展)


您可以使用以下表达式计算小时数之和:

var sum = Model.Vacation.Sum(vacation => vacation.Hours);
您可以将其添加到视图的顶部:

Sum of hours: @Model.Vacation.Sum(vacation => vacation.Hours)

使用谢谢!我还是编程新手。
var totalHours = employee.Vacation.Aggregate((acc, val) => acc + val);
var sum = Model.Vacation.Sum(vacation => vacation.Hours);
Sum of hours: @Model.Vacation.Sum(vacation => vacation.Hours)