我正在创建一个html表以在列表中显示值<>列表具有三列:指标名称,选择指标的年份和月份以及已过滤次数的计数上。
我正在使用的代码和html如下所示:
<table class="users">
<tr>
<th></th>
@foreach (var monthYear in Model.KeyIndicatorUseCount.Select(m => m.MonthYear).Distinct())
{
<th>@monthYear</th>
}
</tr>
@foreach (var keyIndicator in Model.KeyIndicatorUseCount.Select(m => m.Name).Distinct())
{
<tr>
<td>@keyIndicator</td>
@foreach (var monthYear in Model.KeyIndicatorUseCount.Select(m => m.MonthYear).Distinct())
{
<td>@Model.KeyIndicatorUseCount.Sum(m => m.Count)</td>
}
</tr>
}
</table>
当前,该表中填充了第一个月年份列的值之和。
计算必须是每个关键指标在该月年份中的观看次数之和。
作为参考,下面是当前制作的屏幕截图:
如何进行计算以获得第一列中关键指标名称的每个月-年对应的总和?
答案 0 :(得分:1)
@foreach (var keyIndicator in item.OrderBy(f => f.Name).GroupBy(f => f.Name))
{
<tr>
<td>@keyIndicator.Key</td>
@foreach (var monthYear in keyIndicator.OrderBy(f => f.MonthYear).GroupBy(f => f.MonthYear))
{
<td>@(keyIndicator.Sum(f => f.Count))</td>
}
<td>
@(keyIndicator.Sum(f => f.Count)) /* if you want to sum count of every month of year */
</td>
</tr>
}