首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在视图的模型中添加值

在视图的模型中添加值
EN

Stack Overflow用户
提问于 2011-06-20 07:59:16
回答 3查看 4.7K关注 0票数 1

我对ASp.net中的MVC3Razor3非常陌生。我正在将一个模型发送到一个与此模型紧密耦合的视图。这个模型有列表,我想在模型列表中显示特定字段的总和。这是可能的吗?如何实现?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-06-20 08:19:55

我不会在视图中这么做的。

我会在ViewModel中这样做:

代码语言:javascript
运行
复制
public class SomeViewModel
{
   public ICollection<int> SomeValues { get; set; }
   public int MySum { get { return SomeValues.Sum(x => x.SomeValue); } }
}

然后是视图:

代码语言:javascript
运行
复制
@Html.DisplayFor(model => model.MySum)

或者,您可以使用通用的HTML helper,使其成为通用的,这样您就可以在具有可聚合的IEnumerable<T>的任何模型中重用。

总是试着保持你的视图中没有不必要的逻辑。

票数 5
EN

Stack Overflow用户

发布于 2011-06-20 08:04:32

这应该可以做到这一点,但如果没有看到你的一些代码,就很难做到准确:

代码语言:javascript
运行
复制
@Model.YourList.Sum(p => p.PropertyNameYouWantToSum)
票数 3
EN

Stack Overflow用户

发布于 2011-06-20 23:34:06

代码语言:javascript
运行
复制
Decimal D = listItem.Where(P=>P.Amount>100).Sum(P=>P.Amount);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6405814

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档