我对ASp.net中的MVC3Razor3非常陌生。我正在将一个模型发送到一个与此模型紧密耦合的视图。这个模型有列表,我想在模型列表中显示特定字段的总和。这是可能的吗?如何实现?
发布于 2011-06-20 08:19:55
我不会在视图中这么做的。
我会在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 helper,使其成为通用的,这样您就可以在具有可聚合的IEnumerable<T>的任何模型中重用。
总是试着保持你的视图中没有不必要的逻辑。
发布于 2011-06-20 08:04:32
这应该可以做到这一点,但如果没有看到你的一些代码,就很难做到准确:
@Model.YourList.Sum(p => p.PropertyNameYouWantToSum)发布于 2011-06-20 23:34:06
Decimal D = listItem.Where(P=>P.Amount>100).Sum(P=>P.Amount);https://stackoverflow.com/questions/6405814
复制相似问题