Roles.CreateRole Method
Adds a new role to the data source.
Assembly: System.Web (in System.Web.dll)
Parameters
- roleName
- Type: System.String
The name of the role to create.
| Exception | Condition |
|---|---|
| System.ArgumentNullException | roleName is Nothing. |
| System.ArgumentException | roleName is an empty string. -or- roleName contains a comma. |
| System.Configuration.Provider.ProviderException | Role management is not enabled. |
The CreateRole method adds a role name to the data source. CreateRole calls the CreateRole method of the default role provider to add the specified role to the data source.
Note |
|---|
Role names cannot contain commas. |
The following code example creates a new role in the data source. For an example of a Web.config file that enables role management, see Roles.
Security Note |
|---|
This example contains a text box that accepts user input, which is a potential security threat. By default, ASP.NET Web pages validate that user input does not include script or HTML elements. For more information, see Script Exploits Overview. |
<%@ 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>
Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Note