2016-08-26 3 views

ответ

1

Сколько лет вашей DNN? DotNetNuke.Common.Globals.GetPortalTabs был заменен с DNN 5.0.

Но вот фрагмент кода, чтобы вы начали.

 //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>"; 
      } 
     } 
Смежные вопросы