【问题标题】:Get cell DisplayName from strongly-typed-list cell by List only (empty list)仅通过列表从强类型列表单元格中获取单元格 DisplayName(空列表)
【发布时间】:2017-10-26 12:52:02
【问题描述】:
我有一个 “书” 列表(例如)作为视图中的模型
@model List<Book>
我想创建一个表格,每列通过 Book 的 DisplayName 属性获取其标题:
<tr>
<th class="text-right">
@Html.DisplayNameFor(modelItem => Model.someMetaData.lineNumber)
</th>
<th class="text-right">
@Html.DisplayNameFor(modelItem => Model.someMetaData.FirstName)
</th>
<tr>
【问题讨论】:
标签:
c#
asp.net-mvc
asp.net-mvc-views
【解决方案1】:
当您的模型是IEnumerable<T> 类型时,您可以使用DisplayNameFor 辅助方法
@model IEnumerable<Book>
<table class="table table-responsive table-striped">
<tr>
<th>@Html.DisplayNameFor(a=>a.Id)</th>
<th>@Html.DisplayNameFor(a => a.Name)</th>
</tr>
@foreach (var b in Model)
{
<tr>
<td>@b.Id</td>
<td>@b.Name</td>
</tr>
}
</table>
这仅适用于您的视图强类型为IEnumerable<Book>,它不适用于List<Book>