如何在 DotNetNuke 中获取除“管理”选项卡之外的所有选项卡?

Posted

技术标签:

【中文标题】如何在 DotNetNuke 中获取除“管理”选项卡之外的所有选项卡?【英文标题】:How to get all tabs except Admin tab in DotNetNuke? 【发布时间】:2016-08-26 11:42:16 【问题描述】:
DotNetNuke.Common.Globals.GetPortalTabs(portalID, false, true, false, true, true) this function

这里这个函数返回所有选项卡列表....但我不想要管理选项卡 ..所以请帮帮我..

【问题讨论】:

【参考方案1】:

您的 DNN 几岁了?自 DNN 5.0 起,DotNetNuke.Common.Globals.GetPortalTabs 已被替换。

但是这里有一个代码 sn-p 可以帮助您入门。

//get all the tabs in the current portal
List<DotNetNuke.Entities.Tabs.TabInfo> portalTabs = TabController.GetPortalTabs(PortalId, 0, true, false);

//loop all the tabs
foreach (TabInfo tabInfo in portalTabs)

    //get the TabPermission for the current tab and cast from Collection to List<TabPermissionInfo>
    List<DotNetNuke.Security.Permissions.TabPermissionInfo> tabPermissionInfo = DotNetNuke.Security.Permissions.TabPermissionController.GetTabPermissions(tabInfo.TabID, PortalId).Cast<DotNetNuke.Security.Permissions.TabPermissionInfo>().ToList();

    //filter out all the TabPermission with administrator using Linq
    List<TabPermissionInfo> tabPermissionInfoFiltered = tabPermissionInfo.Where(x => x.RoleName != "Administrators").ToList();

    //loop all the permissionInfo objects with administrator filtered out
    foreach (TabPermissionInfo permissionInfo in tabPermissionInfoFiltered)
    
        Label1.Text += tabInfo.TabName + " - " + permissionInfo.RoleName + "<br>"; 
    

【讨论】:

以上是关于如何在 DotNetNuke 中获取除“管理”选项卡之外的所有选项卡?的主要内容,如果未能解决你的问题,请参考以下文章

ASP.NET - IIS 7 - DotNetNuke - 如何强制浏览器重新加载站点的 CSS?

如何在 DotNetNuke 中创建具有自定义页面名称的友好 URL?

在 DotNetNuke 中使用 jQuery UI 日期选择器代替 Telerik RadCalendar

DotNetNuke 使用具有透明度的 PNG 图像

从 DotNetNuke 迁移到 ASP.NET Core

在 DotNetNuke 表单和列表中使用 XSLT 对项目进行分组