如何使用DisplayForModel()显示Customers列表?

时间:2011-01-28 06:47:39

标签: asp.net-mvc

通常我们分别使用DisplayForModelEditorForModel来显示和编辑单个Customer对象。

如何使用这些模板方案显示客户列表?

2 个答案:

答案 0 :(得分:19)

假设您的视图模型中有一组客户

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>

然后,将为主模型的客户集合的每个元素呈现Customer部分。重要的是命名约定:partial应该位于DisplayTemplates子文件夹中,并且与集合类型(Customer)相同。

答案 1 :(得分:2)

如何关注Haack的tutorial

  

就像这个功能一样,有   一个显着的模板   失踪。 ASP.NET MVC不包括   用于显示列表的模板   表格格式的对象。

     

此前   今天,ScottGu转发了一封电子邮件   Daniel Manes(什么?!没有博客!;)   关于如何实现这一目标的问题。   丹尼尔已经实施了很多,但是   我试图克服最后一次   栏。在布拉德的帮助下,我能够   让他超越那个障碍。   让我们来看看这个场景。