Controller
我有按2个字段分组的数据
lst = db.Database.SqlQuery<GridReportViewModel>(sqlquery).ToList();
Viewbag.DataGrid = lst.GroupBy(x => new { x.PosisiJabatanId, x.AplikasiId });
查看
如何从分组数据中获取密钥
@{int i = 1;}
@foreach (var item in @ViewBag.DataGrid)
{
@:<tr>
<td>@i</td>
@*<td>@item.Key.PosisiJabatanId</td>*@ @*ERROR*@
foreach (GridReportViewModel item2 in @item)
{
<td>@item2.NilaiKolom</td>
}
i = i + 1;
@:</tr>
}
错误:“对象”不包含“键”的定义
您用匿名类型值填充了ViewBag
,并且无法将其强制转换为View
,因此应更改此行
您需要使用属性获取数据。使用new
时,它将返回匿名对象,因此您需要使用动态对象。一旦获得了动态对象key
的值,就需要使用动态对象val
。
如下添加您的查询中的选择