2011-06-30 54 views
6

Tôi có một bảng danh mục có ba trường: Id, TitleParentId. Tôi muốn tạo một cấu trúc phân cấp đệ quy của bảng (một cây) trong một tệp cshtml. Tôi mới vào ASP.NET MVC và tôi không biết làm thế nào để làm điều đó, bởi vì không có tập tin mã phía sau và tôi không biết từ nơi tôi nên bắt đầu. Xin lưu ý rằng tôi đang lưu trữ rừng, không phải là cây trong cơ sở dữ liệu của tôi. Nói cách khác, cây kết quả có thể có nhiều rễ.Cách tạo cấu trúc đệ quy trong ASP.NET MVC

Trả lời

11

Cách đơn giản nhất là sử dụng một helper:

@helper RecurseSomething(MyClass data) { 
    <li> 
     @data.Title 
     @if (data.SubItems.Count() > 0) { 
      <ul> 
       @foreach(var subData in data.SubItems) { 
        @RecurseSomething(subData); 
       } 
      </ul> 
     }  
    </li> 
} 
+0

Genius! Đơn giản nhưng mạnh mẽ. – Phil

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