我正在尝试替换NavigationManager
中的Orchard CMS Orchard.UI.Navigation
,以便根据权限过滤菜单项。这是我的代码:
[OrchardSuppressDependency("Orchard.UI.Navigation.NavigationManager")]
public class MmtNavigationManager : NavigationManager
{
public MmtNavigationManager(IEnumerable<INavigationProvider> providers, IAuthorizationService authorizationService, UrlHelper urlHelper, IOrchardServices orchardServices)
: base(providers, authorizationService, urlHelper, orchardServices)
{
}
public new IEnumerable<MenuItem> BuildMenu(string menuName)
{
var menu = base.BuildMenu(menuName);
return menu;
}
}
此代码位于已安装并已启用的模块中。调用构造函数但从不调用BuildMenu
方法;原来的BuildMenu
会被调用。
有什么想法吗?
由于
答案 0 :(得分:2)
MmtNavigationManager
)继承INavigationManager
。