Freigeben über


Roles.AddUserToRole(String, String) Methode

Definition

Fügt der angegebenen Rolle den angegebenen Benutzer hinzu.

public:
 static void AddUserToRole(System::String ^ username, System::String ^ roleName);
public static void AddUserToRole (string username, string roleName);
static member AddUserToRole : string * string -> unit
Public Shared Sub AddUserToRole (username As String, roleName As String)

Parameter

username
String

Der Benutzername, der der angegebenen Rolle hinzugefügt werden soll.

roleName
String

Die Rolle, der der angegebenen Benutzernamen hinzugefügt werden soll.

Ausnahmen

roleName ist null.

- oder -

username ist null.

roleName ist eine leere Zeichenfolge oder enthält ein Komma (,).

- oder -

username ist eine leere Zeichenfolge oder enthält ein Komma (,).

Rollenverwaltung ist nicht aktiviert.

- oder -

Der Benutzer ist bereits der angegebenen Rolle zugewiesen.

Beispiele

Im folgenden Codebeispiel wird einer Rolle ein Benutzer hinzugefügt. Ein Beispiel für eine Web.config-Datei, die die Rollenverwaltung aktiviert, finden Sie unter Roles.

<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Security" %>
<%@ Import Namespace="System.Web.UI" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

string[] rolesArray;
MembershipUserCollection users;

public void Page_Load()
{
  Msg.Text = "";

  if (!IsPostBack)
  {
    // Bind roles to ListBox.

    rolesArray = Roles.GetAllRoles();
    RolesListBox.DataSource = rolesArray;
    RolesListBox.DataBind();

    // Bind users to ListBox.

    users = Membership.GetAllUsers();
    UsersListBox.DataSource = users;
    UsersListBox.DataBind();
  }
}


public void AddUser_OnClick(object sender, EventArgs args)
{
  // Verify that a user and a role are selected.

  if (UsersListBox.SelectedItem == null)
  {
    Msg.Text = "Please select a user.";
    return;
  } 

  if (RolesListBox.SelectedItem == null)
  {
    Msg.Text = "Please select a role.";
    return;
  }

  // Add the user to the selected role.

  try
  {
    Roles.AddUserToRole(UsersListBox.SelectedItem.Value, RolesListBox.SelectedItem.Value);  
    Msg.Text = "User added to Role.";
  }
  catch (HttpException e)
  {
    Msg.Text = e.Message;
  } 
}

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Sample: Role Membership</title>
</head>
<body>

<form runat="server" id="PageForm">
  <h3>Role Membership</h3>
  <asp:Label id="Msg" ForeColor="maroon" runat="server" /><br />
  <table cellpadding="3" border="0">
    <tr>
      <td valign="top">Roles:</td>
      <td valign="top"><asp:ListBox id="RolesListBox" runat="server" Rows="8" /></td>
      <td valign="top">Users:</td>
      <td valign="top"><asp:ListBox id="UsersListBox" DataTextField="Username" 
                                  Rows="8" runat="server" /></td>
      <td valign="top"><asp:Button Text="Add User to Role" id="AddUserButton"
                                 runat="server" OnClick="AddUser_OnClick" /></td>
    </tr>
  </table>
</form>

</body>
</html>
<%@ Page Language="VB" %>
<%@ Import Namespace="System.Web.Security" %>
<%@ Import Namespace="System.Web.UI" %>
<!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
Dim users As MembershipUserCollection

Public Sub Page_Load()

  Msg.Text = ""

  If Not IsPostBack Then
    ' Bind roles to ListBox.

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

    ' Bind users to ListBox.

    users = Membership.GetAllUsers()
    UsersListBox.DataSource = users
    UsersListBox.DataBind()
  End If
End Sub


Public Sub AddUser_OnClick(sender As Object, args As EventArgs)

  ' Verify that a user and a role are selected.

  If UsersListBox.SelectedItem Is Nothing Then
    Msg.Text = "Please select a user."
    Return
  End If 

  If RolesListBox.SelectedItem Is Nothing Then
    Msg.Text = "Please select a role."
    Return
  End If


  ' Add the user to the selected role.

  Try
    Roles.AddUserToRole(UsersListBox.SelectedItem.Value, RolesListBox.SelectedItem.Value)  
    Msg.Text = "User added to Role."
  Catch e As HttpException
    Msg.Text = e.Message
  End Try
End Sub

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Sample: Role Membership</title>
</head>
<body>

<form runat="server" id="PageForm">
  <h3>Role Membership</h3>
  <asp:Label id="Msg" ForeColor="maroon" runat="server" /><br />
  <table cellpadding="3" border="0">
    <tr>
      <td valign="top">Roles:</td>
      <td valign="top"><asp:ListBox id="RolesListBox" runat="server" Rows="8" /></td>
      <td valign="top">Users:</td>
      <td valign="top"><asp:ListBox id="UsersListBox" DataTextField="Username" 
                                  Rows="8" runat="server" /></td>
      <td valign="top"><asp:Button Text="Add User to Role" id="AddUserButton"
                                 runat="server" OnClick="AddUser_OnClick" /></td>
    </tr>
  </table>
</form>

</body>
</html>

Hinweise

Die AddUserToRole -Methode ruft den Standardrollenanbieter auf, um den angegebenen Benutzer der angegebenen Rolle an der Datenquelle zuzuordnen.

Hinweis

Benutzernamen und Rollennamen dürfen keine Kommas enthalten.

Gilt für:

Weitere Informationen