我试图弄清楚如何在 EPiServer 7 中实现菜单。唯一可用的文档显示了如何使用我不使用的 webforms 来做到这一点
任何建议如何做到这一点?
谢谢
我试图弄清楚如何在 EPiServer 7 中实现菜单。唯一可用的文档显示了如何使用我不使用的 webforms 来做到这一点
任何建议如何做到这一点?
谢谢
在有人打败我之前写了一个解决方案:)
@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);
}