Roles.DeleteRole Method (String, Boolean)

 

Removes a role from the data source.

Namespace:   System.Web.Security
Assembly:  System.Web (in System.Web.dll)

Public Shared Function DeleteRole (
	roleName As String,
	throwOnPopulatedRole As Boolean
) As Boolean

Parameters

roleName
Type: System.String

The name of the role to delete.

throwOnPopulatedRole
Type: System.Boolean

If true, throws an exception if roleName has one or more members.

Return Value

Type: System.Boolean

true if roleName was deleted from the data source; otherwise; false.

Exception Condition
System.ArgumentNullException

roleName is null.

System.ArgumentException

roleName is an empty string.

System.Configuration.Provider.ProviderException

roleName has one or more members and throwOnPopulatedRole is true.

-or-

Role management is not enabled.

The DeleteRole method removes a role name from the data source. DeleteRole calls the DeleteRole method of the default role provider to remove the specified role from the data source.

If throwOnPopulatedRole is true, then an exception will be thrown and the role will not be deleted if the role identified by the roleName parameter has one or more members. If throwOnPopulatedRole is false, then the role will be deleted whether it is empty or not.

The following code example deletes a role from the data source. For an example of a Web.config file that enables role management, see Roles.


<%@ 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(ByVal sender As Object, ByVal args As EventArgs)

    If Not IsPostBack Then
      ' Bind roles to ListBox.

      rolesArray = Roles.GetAllRoles()
      RolesListBox.DataSource = rolesArray
      RolesListBox.DataBind()
    End If

  End Sub


  Public Sub DeleteRole_OnClick(ByVal sender As Object, ByVal args As EventArgs)

    Dim delRole As String

    Try
      delRole = RolesListBox.SelectedItem.Value

      Roles.DeleteRole(delRole)

      Msg.Text = "Role '" & Server.HtmlEncode(delRole) & "' deleted."

      ' Re-bind roles to ListBox.

      rolesArray = Roles.GetAllRoles()
      RolesListBox.DataSource = rolesArray
      RolesListBox.DataBind()
    Catch
      Msg.Text = "Role '" & Server.HtmlEncode(delRole) & "' <u>not</u> deleted."
    End Try

  End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
  <title>Sample: Delete Role</title>
</head>
<body>
  <form runat="server" id="PageForm">
    <h3>
      Delete Role</h3>
    <asp:Label ID="Msg" ForeColor="maroon" runat="server" /><br />
    <table border="0">
      <tr>
        <td valign="top">
          Delete Role:</td>
        <td valign="top">
          <asp:ListBox ID="RolesListBox" runat="server" Rows="8" /></td>
        <td valign="top">
          <asp:Button Text="Delete Role" ID="DeleteRoleButton" runat="server" OnClick="DeleteRole_OnClick" /></td>
      </tr>
    </table>
  </form>
</body>
</html>

.NET Framework
Available since 2.0
Return to top
Show: