Roles.AddUserToRoles メソッド
アセンブリ: System.Web (system.web.dll 内)


例外の種類 | 条件 |
---|---|
System.ArgumentNullException | roleNames のロールの 1 つは、null 参照 (Visual Basic では Nothing) です。 または username が null 参照 (Visual Basic では Nothing) です。 |
System.ArgumentException | roleNames のロールの 1 つが空の文字列か、またはコンマ (,) を含んでいます。 または username が空の文字列であるか、またはコンマ (,) を含んでいます。 または |
System.Configuration.Provider.ProviderException |

AddUserToRoles メソッドは既定のロール プロバイダを呼び出し、指定されたユーザーをデータ ソースの指定されたロールに関連付けます。
アプリケーションが SqlRoleProvider クラスを使用する場合、AddUserToRoles メソッドの呼び出しによって実行されるデータベースの更新は単一のトランザクションで完了します。指定されたロールに既にユーザー名が存在するなどのエラーが発生した場合、トランザクションがロールバックされ、更新は実行されません。
![]() |
---|

ユーザーを 1 つ以上のロールに追加するコード例を次に示します。ロール管理を有効にする Web.config ファイルの例については、Roles のトピックを参照してください。
<%@ Page Language="VB" %> <%@ Import Namespace="System.Web.Security" %> <%@ Import Namespace="System.Web.UI" %> <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 at least one role are selected. If UsersListBox.SelectedItem Is Nothing Then Msg.Text = "Please select one or more users." Return End If Dim role_indices() As Integer = RolesListBox.GetSelectedIndices() If role_indices.Length = 0 Then Msg.Text = "Please select one or more roles." Return End If ' Create list of roles to be add the selected users to. Dim rolesList(role_indices.Length - 1) As String For i As Integer = 0 To rolesList.Length - 1 rolesList(i) = RolesListBox.Items(role_indices(i)).Value Next ' Add the users to the selected role. Try Roles.AddUserToRoles(UsersListBox.SelectedItem.Value, rolesList) Msg.Text = "User added to Role(s)." Catch e As HttpException Msg.Text = e.Message End Try End Sub </script> <html> <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" SelectionMode="Multiple" 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(s)" id="AddUserButton" runat="server" OnClick="AddUser_OnClick" /></td> </tr> </table> </form> </body> </html>
<%@ Page Language="C#" %> <%@ Import Namespace="System.Web.Security" %> <%@ Import Namespace="System.Web.UI" %> <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 at least one role is selected. if (UsersListBox.SelectedItem == null) { Msg.Text = "Please select a user."; return; } int[] role_indices = RolesListBox.GetSelectedIndices(); if (role_indices.Length == 0) { Msg.Text = "Please select one or more roles."; return; } // Create list of roles to be add the selected users to. string[] rolesList = new string[role_indices.Length]; for (int i = 0; i < rolesList.Length; i++) { rolesList[i] = RolesListBox.Items[role_indices[i]].Value; } // Add the users to the selected role. try { Roles.AddUserToRoles(UsersListBox.SelectedItem.Value, rolesList); Msg.Text = "User added to Role(s)."; } catch (HttpException e) { Msg.Text = e.Message; } } </script> <html> <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" SelectionMode="Multiple" 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(s)" id="AddUserButton" runat="server" OnClick="AddUser_OnClick" /></td> </tr> </table> </form> </body> </html>

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からRoles.AddUserToRoles メソッドを検索する場合は、下記のリンクをクリックしてください。

- Roles.AddUserToRoles メソッドのページへのリンク