计算视图内的数字

时间:2017-11-14 16:51:47

标签: c# asp.net-mvc

我正在尝试从MVC视图中的循环中添加数字并显示这些数字的总值。但是下面的代码只是在另一个旁边添加数字而不是计算。你能告诉我怎样才能计算出所有的数字和显示?

@{ var TotalWatch = ""; }
@foreach(var item in ViewBag.tableItems)
{
 if (item.NumberOfWatch != "")
 {
     TotalWatch += item.NumberOfWatch;
 }
}
@TotalWatch

1 个答案:

答案 0 :(得分:1)

假设item.NumberOfWatch是一个字符串,以下内容应该有效,但这是一个糟糕的方法。

@{ var TotalWatch = 0; }
@foreach(var item in ViewBag.tableItems)
{
 if (item.NumberOfWatch != "")
 {
     TotalWatch += int.Parse(item.NumberOfWatch);
 }
}
@TotalWatch

相反,你应该有一个强类型的视图模型,它应该传递给View,而不是通过ViewBag传递数据。

e.g。

你的模特:

class YourViewModel
  int TotalWatch // sum it here

您的观点:

@Model.TotalWatch