在View中的模型中添加值

时间:2011-06-19 23:59:16

标签: asp.net-mvc-3

我是ASp.net中MVC 3 Razor的新手。 我正在将模型发送到与此模型紧密耦合的视图。  这个模型有列表,我想在该模型列表中显示特定字段的SUM。 那是可能的吗?

3 个答案:

答案 0 :(得分:5)

我不会在视图中这样做。

我会在ViewModel中执行此操作:

public class SomeViewModel
{
   public ICollection<int> SomeValues { get; set; }
   public int MySum { get { return SomeValues.Sum(x => x.SomeValue); } }
}

然后是观点:

@Html.DisplayFor(model => model.MySum)

或者,您可以使用通用的HTML帮助程序,使其成为通用的,这样您就可以在任何可以聚合IEnumerable<T>的模型中重复使用。

始终尝试让您的视图远离不必要的逻辑。

答案 1 :(得分:3)

这应该这样做,但是没有看到你的一些代码就很难准确:

@Model.YourList.Sum(p => p.PropertyNameYouWantToSum)

答案 2 :(得分:0)

Decimal D = listItem.Where(P=>P.Amount>100).Sum(P=>P.Amount);