繁体   English   中英

使用MVC和Razor在EPiServer 7中构建顶级菜单

[英]Building a top-menu in EPiServer 7 using MVC and Razor

我试图弄清楚如何在EPiServer 7中实现菜单。唯一的可用文档显示了如何使用我不使用的Web表单来执行此操作。

任何建议如何做到这一点?

谢谢

在有人击败我之前写了一个解决方案:)

@using EPiServer
@using EPiServer.Core
@using EPiServer.Filters
@using EPiServer.Web.Mvc.Html

<ul id="mainMenu">
        @{ 
            PageData startPage = ContentReference.StartPage.GetPage();
            PageDataCollection allChilds = DataFactory.Instance.GetChildren(((PageData)startPage).PageLink);
            IEnumerable<PageData> filteredChilds = FilterForVisitor.Filter(allChilds).Where(p => p.IsVisibleOnSite() && p.VisibleInMenu);
        }

        @foreach (PageData item in filteredChilds)
        {
            <li>
                <a href="/@item.URLSegment.ToString()">
                    @item.Name
                </a>
            </li>
        }
</ul>

其中GetPage是扩展方法

public static PageData GetPage(this PageReference pageLink)
{
    return DataFactory.Instance.GetPage(pageLink);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM