В моем приложении MVC4 у меня есть часть администратора. В этом админ-представлении я вижу всех зарегистрированных пользователей (пока) принятых пользователей. Это представление также является редактором для ienumerable. Для того, чтобы иметь редактор для IEnumerable, я добавил IList и петли, как это, на мой взгляд:IList для привязки к модели в MVC4
@model IList<PlusPlatform.Models.UserProfile>
@{
ViewBag.Title = "Manage";
}
<h2>@ViewBag.Title</h2>
@using (Html.BeginForm())
{
<table>
<tr>
<th>
@Html.DisplayNameFor(model => model.UserName)
</th>
<th>
@Html.DisplayNameFor(model => model.FirstName)
</th>
<th>
@Html.DisplayNameFor(model => model.LastName)
</th>
<th>
@Html.DisplayNameFor(model => model.DepartmentId)
</th>
<th>
@Html.DisplayNameFor(model => model.IsActivated)
</th>
</tr>
@for (var i = 0; i < Model.Count(); i++) {
<tr>
<td>
@Html.EditorFor(modelItem => Model[i].UserName)
</td>
<td>
@Html.EditorFor(modelItem => Model[i].FirstName)
</td>
<td>
@Html.EditorFor(modelItem => Model[i].LastName)
</td>
<td>
@Html.EditorFor(modelItem => Model[i].DepartmentId)
</td>
<td>
@Html.EditorFor(modelItem => Model[i].IsActivated)
</td>
</tr>
}
</table>
<input type="submit" value="Save" />
}
Но теперь проблема я не могу использовать Html.DisplayNameFor и Html.LabelFor. Что я могу сделать, чтобы правильно отобразить этикетки?
Мне очень нравится IList, потому что, когда я использую 'IEnumerable', при отправке формы контроллеру модель будет равна null. –
devqon
@ user3153169, см. Отредактированный ответ. – Zabavsky