次のようなネストされたクラスがあります:
public class Jar
{
public IEnumerable<NailClippings> Nails { set; get; }
public IEnumerable<People> Donors { set; get; }
}
私のコントローラーは、文字列を次のように入力して、シングルJar
をビューに渡します
@model Test.ViewModels.Jar
Nails
私はこのようなものの内容をDonors
簡単にループすることができます
@foreach(var item in Model.Nails)
私の問題は、HTMLヘルパーを使用して表示名を生成することです。
@Html.DisplayNameFor(model => model.Nails.Length)
内部のネストされたクラスのタイプをに変更し、クエリの最後にList
追加し、行をに変更することで解決策を考え出しました。.ToList()
@Html.DisplayNameFor(model => model.Nails[0].Length)
名前を表示するために使用することを余儀なくされList
、インデックスを持っていること[0]
は私には間抜けです。内部のネストされたクラス属性を参照するための代替方法はありますか?
編集:表示
<table>
<tr>
<th>@Html.DisplayNameFor(model => model.Nails[0].Length)</th>
.
.
</tr>
@foreach(var item in Model.Nails){
<tr>
<td>@Html.DisplayFor(modelItem => item.Length</td>
.
.
</tr>
}
</table>