AuthorizationStoreRoleProvider.GetAllRoles Method
Assembly: System.Web (in system.web.dll)
'Declaration Public Overrides Function GetAllRoles As String() 'Usage Dim instance As AuthorizationStoreRoleProvider Dim returnValue As String() returnValue = instance.GetAllRoles
public String[] GetAllRoles ()
public override function GetAllRoles () : String[]
Not applicable.
Return Value
A string array containing the names of all the roles stored in the authorization-manager policy store for a particular application.| Exception type | Condition |
|---|---|
|
The configured applicationName was not found. -or- The configured scopeName was not found. -or- The authorization-manager runtime is not installed on the server. | |
|
The connectionStringName attribute references a connection string to a file that does not exist. | |
|
The AuthorizationStoreRoleProvider instance is configured with a file-based policy store, and read access to the file is not allowed at the current trust level. |
The GetAllRoles method is called by the Roles class to retrieve a list of all the roles in the authorization-manager policy store specified in the ASP.NET application's configuration file (Web.config).
The following code example uses the GetAllRoles method to get the list of roles for an application and bind the results to a System.Web.UI.WebControls.GridView control. For an example of a Web.config file that enables role management, see AuthorizationStoreRoleProvider.
<%@ Page Language="VB" %> <%@ Import Namespace="System.Web.Security" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server"> Dim rolesArray() As String Public Sub Page_Load(sender As Object, args As EventArgs) If Not IsPostBack Then ' Bind roles to GridView. rolesArray = Roles.GetAllRoles() RolesGrid.DataSource = rolesArray RolesGrid.DataBind() End If End Sub Public Sub CreateRole_OnClick(sender As Object, args As EventArgs) Dim createRole As String = RoleTextBox.Text Try If Roles.RoleExists(createRole) Then Msg.Text = "Role '" & Server.HtmlEncode(createRole) & "' already exists. Please specify a different role name." Return End If Roles.CreateRole(createRole) Msg.Text = "Role '" & Server.HtmlEncode(createRole) & "' created." ' Re-bind roles to GridView. rolesArray = Roles.GetAllRoles() RolesGrid.DataSource = rolesArray RolesGrid.DataBind() Catch Msg.Text = "Role '" & Server.HtmlEncode(createRole) & "' <u>not</u> created." End Try End Sub </script> <html xmlns="http://www.w3.org/1999/xhtml" > <head> <title>Sample: Create Role</title> </head> <body> <form runat="server" id="PageForm"> <h3>Create a Role</h3> <asp:Label id="Msg" ForeColor="maroon" runat="server" /><br /> Role name: <asp:TextBox id="RoleTextBox" runat="server" /> <asp:Button Text="Create Role" id="CreateRoleButton" runat="server" OnClick="CreateRole_OnClick" /> <br /> <asp:GridView runat="server" CellPadding="2" id="RolesGrid" Gridlines="Both" CellSpacing="2" AutoGenerateColumns="false" > <HeaderStyle BackColor="navy" ForeColor="white" /> <Columns> <asp:TemplateField HeaderText="Roles" > <ItemTemplate> <%# Container.DataItem.ToString() %> </ItemTemplate> </asp:TemplateField> </Columns> </asp:GridView> </form> </body> </html>