2011-06-30 16 views
6

Tengo una tabla de categorías que tiene tres campos: Id, Title y ParentId. Me gustaría crear una estructura jerárquica recursiva de mi tabla (un árbol) en un archivo cshtml. Soy nuevo en ASP.NET MVC y no sé cómo hacerlo, porque no hay ningún archivo de código subyacente y no sé desde dónde debería comenzar. Tenga en cuenta que estoy almacenando un jungle, no un árbol en mi base de datos. En otras palabras, el árbol de resultados puede tener muchas raíces.Cómo crear una estructura recursiva en ASP.NET MVC

Respuesta

11

La forma más fácil es usar un ayudante:

@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! Simple pero poderoso. – Phil

Cuestiones relacionadas