2011-01-28 23 views

Trả lời

18

Giả sử bạn có một bộ sưu tập của khách hàng trong mô hình quan điểm của bạn

public class MyViewModel 
{ 
    public IEnumerable<Customer> Customers { get; set; } 
} 

bạn có thể sử dụng sau đây theo quan điểm của bạn:

@Html.DisplayFor(x => x.Customers) 

và sau đó trong các mẫu biên tập/display (~/Views/Home/DisplayTemplates/Customer.cshtml hoặc ~/Views/Shared/DisplayTemplates/Customer.cshtml):

@model AppName.Model.Customer 
<div>@Model.Name</div> 

Khách hàng một phần wil l sau đó được hiển thị cho từng phần tử của bộ sưu tập khách hàng của mô hình chính của bạn. Điều quan trọng là quy ước đặt tên: một phần phải được đặt trong một thư mục con DisplayTemplates và được gọi giống như loại bộ sưu tập (Customer).

+0

Có cách nào để chỉ định tên mẫu cho tên khác không? Mô hình khách hàng là như nhau nhưng nếu bạn muốn hiển thị nó trong mẫu khác nhau? điều này không hoạt động như DisplayFor (x => x.Customers, "CustomerGridView")? – akd

+0

@akdurmus sử dụng điều này: http://stackoverflow.com/a/30147292/329367 – Darren

3

Làm thế nào để theo dõi tutorial của Haack?

Tuyệt vời như tính năng này, có một mẫu rõ ràng là thiếu . ASP.NET MVC không bao gồm mẫu để hiển thị danh sách các đối tượng ở định dạng bảng.

Trước đó hôm nay, ScottGu đã chuyển tiếp email từ Daniel Manes (cái gì ?! không có blog!;) Với câu hỏi về cách thực hiện việc này. Daniel đã thực hiện nhiều điều, nhưng đang cố vượt qua ngưỡng cản cuối cùng. Với sự giúp đỡ của Brad, tôi đã có thể để giúp anh ta vượt qua rào cản đó. Hãy xem qua kịch bản.

Các vấn đề liên quan