Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/275.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 当其余变量在循环中时,如何在视图中显示变量?_C#_Html_Asp.net Mvc - Fatal编程技术网

C# 当其余变量在循环中时,如何在视图中显示变量?

C# 当其余变量在循环中时,如何在视图中显示变量?,c#,html,asp.net-mvc,C#,Html,Asp.net Mvc,对不起,我不知道该如何表达这个问题。目前,我有3个变量要显示在视图中。然而,这三个变量中的一个是索赔产生的总金额,我希望这个变量显示一次。有没有办法做到这一点 控制器: public ActionResult About() { IQueryable<ClaimsDateGroup> data = from claim in db.Claims group claim by

对不起,我不知道该如何表达这个问题。目前,我有3个变量要显示在视图中。然而,这三个变量中的一个是索赔产生的总金额,我希望这个变量显示一次。有没有办法做到这一点

控制器:

public ActionResult About()
    {
        IQueryable<ClaimsDateGroup> data = from claim in db.Claims
                                           group claim by claim.CreatedDate into dateGroup
                                           select new ClaimsDateGroup()
                                           {
                                               CreatedDate = dateGroup.Key,
                                               ClaimCount = dateGroup.Count(),
                                               Total = db.Claims.Sum(c => c.Total)
                                           };
        return View(data.ToList());
    }
public ActionResult About()
{
IQueryable数据=来自索赔(以db.Claims为单位)
按claim.CreatedDate将索赔分组到dateGroup中
选择新建ClaimsDataGroup()
{
CreatedDate=dateGroup.Key,
ClaimCount=dateGroup.Count(),
总计=db.Claims.Sum(c=>c.Total)
};
返回视图(data.ToList());
}
视图:

@foreach(模型中的变量项)
{
@DisplayFor(modelItem=>item.CreatedDate)
@DisplayFor(modelItem=>item.ClaimCount)
@DisplayFor(modelItem=>item.Total)
}
2件事

  • 使用一个单独的查询来获取总数,这样您将有一个单独的值

  • 如果只想显示一次,则需要在构建视图表的循环外部显示总计


  • 在您的模型中,将其置于foreach循环之外,并将其更改为

    @Model.Sum(o => o.Total)
    

    总数是多少?我希望它是该组索赔的总数,但您似乎要多次计算所有索赔的总数。这是所有索赔的总和,我认为财产不属于那里。这是所有索赔的总和。这只是程序的一个小统计部分,我想显示三个统计数据。创建索赔的日期、当天创建的索赔金额以及通过索赔赚得的所有钱的总数。请注意,该标记是针对有关模式的问题,而您的问题是关于ASP.NET实现的,它应该使用该标记。我在这里为您添加了它。我如何才能将它传递到视图,尽管视图只能传递一个对象。在这种情况下,它将对象数据作为列表。如果我从数据列表中删除总计,那么我将无法传递它。您需要一个包装器对象,将总计和列表作为属性公开。然后可以将包装器传递给视图。我刚刚创建了另一个查询,然后将其放入ViewBag中。效率很低,但很有效谢谢你,但是有没有办法在方法中只保留总数?
    @Model.Sum(o => o.Total)