LINQ to SQL - Grouping categories by parentId

Posted by creativeincode on Stack Overflow See other posts from Stack Overflow or by creativeincode
Published on 2010-05-25T13:25:31Z Indexed on 2010/05/25 14:01 UTC
Read the original article Hit count: 256

I am trying to construct a navigation menu using a Categories table from my db.

I have a similar layout as below in Categories table.

public List<Category> CategoryData = new List(new Category[] {  
                                        new Category{ CategoryId = 1, Name = "Fruit", ParentCategoryId = null},
                                        new Category{ CategoryId = 2, Name = "Vegetables", ParentCategoryId = null},
                                        new Category{ CategoryId = 3, Name = "Apples", ParentCategoryId = 1},
                                        new Category{ CategoryId = 4, Name = "Bananas", ParentCategoryId = 1},
                                        new Category{ CategoryId = 5, Name = "Cucumber", ParentCategoryId = 2},
                                        new Category{ CategoryId = 6, Name = "Onions", ParentCategoryId = 2}
                                );  }

The above should return something like

Fruit (parent)

 "===Apples, Bananas (child)

Vegetables (parent)

"===Cucumber, Onions (child)

I need to be able to pass this as some kind of 'grouped' (grouped by parentid) collection to my View.

How to do this?

© Stack Overflow or respective owner

Related posts about asp.net-mvc

Related posts about linq-to-sql