2016-08-26 84 views

回答

1

幾歲是你的DNN?自DNN 5.0以來已更換DotNetNuke.Common.Globals.GetPortalTabs

但是,這裏有一個代碼片段讓你開始。

 //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>"; 
      } 
     } 
相關問題