我的第一个视图开头是这样的:
@model IEnumerable<ToDo4.Models.ToDoItem>
这有效:
<th>
@Html.DisplayNameFor(model => model.Content)
</th>
当我将View更改为使用元组时,DisplayNameFor()将不起作用。
@model Tuple<IEnumerable<ToDo4.Models.ToDoItem>, ToDo4.Models.ApplicationUser>
<th>
@Html.DisplayNameFor(model => model.Item1.Content)
</th>
我不明白为什么DisplayNameFor()能够从第一个@model中提取ToDoItem类型,但是当IEnumerable在元组中时却不能。 我在俯瞰什么?谢谢......
答案 0 :(得分:0)
在这里找到答案:MVC Html.DisplayNameFor on a complex model
创建了一个包装类,更改了IEnumerable&lt;&gt;到IList&lt;&gt;,这似乎有效:
&LT的第i;
@ Html.DisplayNameFor(model =&gt; model.Item1 [0] .Content)
&LT; /第&GT;
答案 1 :(得分:0)
您最初的想法适用于:
@using GHCOMvc.Controllers
@model (<IEnumerable<ToDo4.Models.ToDoItem> list, ToDo4.Models.ApplicationUser> user)
<table class="table">
<tr>
<th>
@Html.DisplayNameFor(model => model.list.FirstOrDefault().Content)
</th>
</tr>
</table>