Query and render categories

Render Category Tree

@{
    void RenderCategories(IEnumerable<ICategory> categories)
    {
        if (categories == null || !categories.Any()) { return; }
        
        <ul>
            @foreach (var category in categories)
            {
                var active = Array.IndexOf(Model.Path.Split(','), category.Id.ToString()) >= 0 ? "active--class" : "";
                
                <li class="@active">
                    <a href="@category.Url">@category.Title</a>
                    RenderCategories(category.SubCategories);
                </li>
            }
        </ul>
    }

    var rootCategories = _catalog.GetRootCategories();

    RenderCategories(rootCategories);
}

Last updated