Рекурсивное чтение списка <Object>

У меня есть такая структураList<Object>если быть точным, это "CategoryItem" Объект. Вот мое объявление "CategoryItem" Объект.

public class CategoryItem
{
    public string Name { get; set; }
    public int CategoryID {get; set;}
    public int ParentID {get; set; }
    public List<CategoryItem> SubCategory {get; set;}
}

Вот моя примерная структура данных:

[0] CategoryID: 249
Name: "WelcomeNC"
ParentID: 0
SubCategory: length=4
    [0] CategoryID: 250
        Name: "CNC"
        ParentID: 249
        SubCategory: length=0
    [1] CategoryID: 251
        Name: "Production"
        ParentID: 249
        SubCategory: length=0
    [2] CategoryID: 252
        Name: "Administrative"
        ParentID: 249
        SubCategory: length=1
            [0] CategoryID: 261
                Name: "NPower"
                ParentID: 252
                SubCategory: length=0
    [3] CategoryID: 253
        Name: "Help"
        ParentID: 249
        SubCategory: length=1
            [0] CategoryID: 254
                Name: "7"
                ParentID: 253
                SubCategory: length=1
                    [0] CategoryID: 255
                        Name: "CHLK"
                        ParentID: 254
                        SubCategory: length=0
[1] CategoryID: 111
Name: "First"
ParentID: 0
SubCategory: length=0

Моя проблема в том, как мне войти в каждый элемент CategoryItem. объект мой объявлен:

List<CategoryItem> categoryItems = new List<CategoryItem>();

Так что я могу отобразить его в неупорядоченном списке в HTML, как это

WelcomeNC CNC Production Administrative NPower Help 7 CHLK First

Есть ли способ сделать это?

Ответы на вопрос(5)

Ваш ответ на вопрос