Как использовать DisplayForModel() для отображения списка клиентов?
Обычно мы используем DisplayForModel
или EditorForModel
для отображения и редактирования одного объекта Customer соответственно.
Как отобразить список клиентов, использующих эту схему шаблонов?
Ответы
Ответ 1
Предполагая, что у вас есть коллекция клиентов в вашей модели просмотра
public class MyViewModel
{
public IEnumerable<Customer> Customers { get; set; }
}
вы можете использовать в своем представлении следующее:
@Html.DisplayFor(x => x.Customers)
а затем в шаблоне редактора/отображения (~/Views/Home/DisplayTemplates/Customer.cshtml
или ~/Views/Shared/DisplayTemplates/Customer.cshtml
):
@model AppName.Model.Customer
<div>@Model.Name</div>
Частично клиент будет отображаться для каждого элемента коллекции клиентов вашей основной модели. Важное значение имеет соглашение об именах: частичное должно быть расположено в подпапке DisplayTemplates и называется таким же, как тип коллекции (Customer
).
Ответ 2
Как насчет следующего Haack учебник?
Насколько это возможно, существует один шаблон заметен отсутствует. ASP.NET MVC не включает шаблон для отображения списка объектов в табличном формате.
Ранее сегодня ScottGu направил электронное письмо от Даниэль Манес (что?! без блога!;) С вопрос о том, как это сделать. Даниэль много сделал, но пытался преодолеть последние препятствие. С помощью Брэдса мне удалось чтобы дать ему толчок над этим препятствием. Давайте рассмотрим сценарий.