【发布时间】:2025-11-29 23:00:01
【问题描述】:
在我看来:
<tbody>
@foreach (var item in Model)
{
foreach (KeyValuePair<string, Dictionary<string, int>> fs in item.dicFS)
{
<tr>
<td>@Html.DisplayFor(modelItem => fs.Key.ToString())</td>
@foreach (KeyValuePair<string, int> lbl in item.dicFS[fs.ToString()])
{
<td>@Html.DisplayFor(modelItem => lbl.Value.ToString())</td>
}
</tr>
}
}
</tbody>
错误:
An exception of type 'System.InvalidOperationException' occurred in System.Web.Mvc.dll but was not handled in user code
Additional information: Templates can be used only with field access, property access, single-dimension array index, or single-parameter custom indexer expressions.
这是应用程序崩溃时突出显示的行
<td>@Html.DisplayFor(modelItem => fs.Key.ToString())</td>
我的模型包含一个公共字典,其中包含一个字符串键和一个字典值(嵌套字典)
public Dictionary<string, Dictionary<string, int>> dicFS;
键和嵌套字典被初始化,值由模型内的方法分配。
我不能使用字典吗?我是否必须将模型的数据类型转换为嵌套数组而不是使用嵌套字典?
提前感谢您的帮助!
【问题讨论】: