c# - 如何在 MVC 中显示列总和

标签 c# sql asp.net-mvc

我是 ASP.NET MVC 新手,我的问题是,我想添加页脚以显示列的总和。

Controller

List<GenerateTicket_Details> bk = new List<GenerateTicket_Details>();
con.Open();
string query = "";

query += @" select TicketNo,Name,ArrDate,sum(CostumeQuantity) As Quantity, sum(CostumeTotalPrice) As Total, sum(ISNULL(RefundAmount,0)) AS REFUND
 ,sum(ISNULL(CostumeTotalPrice,0) - ISNULL(RefundAmount,0)) AS TotalAmount from GenerateTicket where 1=1";
query += @"  Group by TicketNo,Name,ArrDate ";
SqlCommand cmd = new SqlCommand(query, con);
SqlDataAdapter da = new SqlDataAdapter(cmd);
cmd.CommandType = CommandType.Text;
DataSet ds = new DataSet();
da.Fill(ds);
foreach (DataRow dr in ds.Tables[0].Rows)
{
    bk.Add(new GenerateTicket_Details() { TicketNo = dr[0].ToString(), name = dr[1].ToString(), ArrDate = dr[2].ToString(), quantity = dr[3].ToString(), Total = Convert.ToDecimal(dr[4].ToString()), Refund = Convert.ToDecimal(dr[5].ToString()), TotalAmount = Convert.ToDecimal(dr[6].ToString()) });
    string orderDetails = dr[3].ToString();

}
cmd.ExecuteNonQuery();
ViewBag.MyCustomCollection = bk;
return View(bk);

查看

<tbody>
    @foreach (var item in Model)
    {
        <tr>

            <td style="padding-left: 12px;">@Html.DisplayFor(modelItem => item.TicketNo)</td>
            <td style="padding-left: 12px; display: none;">@Html.DisplayFor(modelItem => item.name)</td>
            <td style="padding-left: 12px;">@Html.DisplayFor(modelItem => item.ArrDate)</td>
            <td style="padding-left: 12px;">@Html.DisplayFor(modelItem => item.quantity)</td>
            <td style="padding-left: 12px;">@Html.DisplayFor(modelItem => item.Total)</td>
            <td>@Html.DisplayFor(modelItem => item.Refund)</td>
            <td>@Html.DisplayFor(modelItem => item.TotalAmount)</td>
           </tr>
     }
</tbody>

我想在列表的最后显示 TotalAmount 的总和

最佳答案

C# 代码:

ViewBag.TotalAmount = ds.Tables[0].Select().Sum(w=> (int) w["RefundAmount"] );
  • ds 是您的数据集对象
  • (int) w["RefundAmount"] 使用您的类型和属性

html:

<tbody>
    @foreach (var item in Model)
    {
.......
     }
<tr><td>TotalAmount : @ViewBag.TotalAmount</td></tr>
</tbody>

希望对你有帮助:)

关于c# - 如何在 MVC 中显示列总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50073276/

相关文章:

sql - 复合主键与附加 "ID"列?

sql - 从Excel工作表生成sql插入脚本

javascript - 在 MVC 中将分部 View 渲染到布局页面的最佳方式是什么?

mysql - 如何使用 html 实体搜索记录集

java - 如何使用listview.GetItemAtPosition(e.Position)获取用户点击的ListView项的数据?

C# NLog 性能类变量

c# - 如何使用 WPF Canvas 以编程方式将图像从一点动画化到另一点?

asp.net-mvc - 是否可以从 URL(基于 Global.asax 路由)获取 Controller 、操作和路由值?

asp.net-mvc - 尝试使用MVCScaffolding创建有问题的 View

c# - 我如何从 C# 调用 javascript