Saeed Neamati
Saeed Neamati

Reputation: 35842

How to create a recursive structure in ASP.NET MVC

I have a categories table which has three fields: Id, Title, and ParentId. I'd like to create a recursive hierarchical structure of my table (a tree) in a cshtml file. I'm new to ASP.NET MVC and I don't know how to do that, because there is no code-behind file and I don't know from where should I start. Please note that I'm storing a jungle, not a tree in my database. In other words, the result tree can have many roots.

Upvotes: 5

Views: 2637

Answers (1)

GvS
GvS

Reputation: 52528

The easiest is using a helper:

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

Upvotes: 11

Related Questions