我有一个模型并查看类似这样的内容: Model and View
我想根据州或联邦显示总和/总数(参见图片中的绿框)。
到目前为止,这是我的观点。
@if (Model.Any())
{
<table>
<tr>
<th>
</th>
<th>
STATE
</th>
<th>
FEDERAL
</th>
</tr>
<tr>
<th width="180">
Project
</th>
<th width="120">
Sponsor
</th>
<th width="120">
Sponsor
</th>
</tr>
@foreach (var item in Model)
{
<tr>
<td>
@Html.DisplayFor(m => item.Project)
</td>
@if (item.Provider == "State")
{
<td>
@Html.DisplayFor(m => item.Sponsor)
</td>
<td>
</td>
}
else
{
<td>
</td>
<td>
@Html.DisplayFor(m => item.Sponsor)
</td>
}
</tr>
}
</table>
}
如何显示值(在绿色框中)?我知道在View中做一笔钱不是一个好习惯。
答案 0 :(得分:0)
您可以使用linq。
@foreach (var item in Model)
{
<tr>
<td>
@Html.DisplayFor(m => item.Project)
</td>
@if (item.Provider == "State")
{
<td>
@Html.DisplayFor(m => item.Sponsor)
</td>
<td>
</td>
}
else
{
<td>
</td>
<td>
@Html.DisplayFor(m => item.Sponsor)
</td>
}
</tr>
}
<tr>
<td></td>
<td>@Model.Where(x => x.Provider == "State").Sum(x => x.Sponsor)</td>
<td>@Model.Where(x => x.Provider != "State").Sum(x => x.Sponsor)</td>
</tr>