RoleProvider.RemoveUsersFromRoles メソッドとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > RoleProvider.RemoveUsersFromRoles メソッドの意味・解説 

RoleProvider.RemoveUsersFromRoles メソッド

メモ : このメソッドは、.NET Framework version 2.0新しく追加されたものです。

指定したユーザー名構成済みapplicationName指定したロールから削除します

名前空間: System.Web.Security
アセンブリ: System.Web (system.web.dll 内)
構文構文

Public MustOverride Sub
 RemoveUsersFromRoles ( _
    usernames As String(), _
    roleNames As String() _
)
Dim instance As RoleProvider
Dim usernames As String()
Dim roleNames As String()

instance.RemoveUsersFromRoles(usernames, roleNames)
public abstract void RemoveUsersFromRoles (
    string[] usernames,
    string[] roleNames
)
public:
virtual void RemoveUsersFromRoles (
    array<String^>^ usernames, 
    array<String^>^ roleNames
) abstract
public abstract void RemoveUsersFromRoles (
    String[] usernames, 
    String[] roleNames
)
public abstract function RemoveUsersFromRoles
 (
    usernames : String[], 
    roleNames : String[]
)

パラメータ

usernames

指定されロールから削除するユーザー名文字列配列

roleNames

指定されユーザー名削除するロール名の文字列配列

解説解説

RemoveUsersFromRoles は、Roles クラスの RemoveUserFromRole、RemoveUsersFromRole、RemoveUserFromRoles、および RemoveUsersFromRoles の各メソッドによって呼び出されデータ ソース指定されロールから指定されユーザー削除します構成済みの ApplicationName のロールのみ変更されます。

構成済みapplicationName指定されroleNames が見つからない場合プロバイダから ProviderException をスローすることをお勧めます。

指定されusernamesいずれか構成済みapplicationName指定されroleNames関連付けられていない場合プロバイダから ProviderExceptionスローすることをお勧めます。

指定されusernamesいずれかnull 参照 (Visual Basic では Nothing) または空の文字列である場合プロバイダから例外スローすることをお勧めます。

指定されroleNamesいずれかnull 参照 (Visual Basic では Nothing) または空の文字列である場合プロバイダから例外スローすることをお勧めます。

データ ソーストランザクションサポートしている場合1 回トランザクション1 回削除操作含め削除操作失敗すると、そのトランザクションロールバックして例外スローすることをお勧めます。

使用例使用例

RemoveUsersFromRoles メソッド実装サンプル次のコード例示します

Public Overrides Sub RemoveUsersFromRoles(usernames
 As String(), rolenames As
 String()) 

  For Each rolename As String
 In rolenames
    If rolename Is Nothing
 OrElse rolename = "" Then
 _
      Throw New ProviderException("Role
 name cannot be empty or null.")
    If Not RoleExists(rolename) Then
 _
      Throw New ProviderException("Role
 name not found.")
  Next

  For Each username As String
 in usernames
    If username Is Nothing
 OrElse username = "" Then
 _
      Throw New ProviderException("User
 name cannot be empty or null.")

    For Each rolename As String
 In rolenames
      If Not IsUserInRole(username, rolename)
 Then
        Throw New ProviderException("User
 is not in role.")
      End If
    Next
  Next

  Dim conn As OdbcConnection = New
 OdbcConnection(connectionString)
  Dim cmd As OdbcCommand = New
 OdbcCommand("DELETE FROM [" & usersInRolesTable
 & "]" & _
                                           " WHERE Username =
 ? AND Rolename = ? AND ApplicationName = ?", conn)

  Dim userParm As OdbcParameter = cmd.Parameters.Add("@Username",
 OdbcType.VarChar, 255)
  Dim roleParm As OdbcParameter = cmd.Parameters.Add("@Rolename",
 OdbcType.VarChar, 255)
  cmd.Parameters.Add("@ApplicationName", OdbcType.VarChar,
 255).Value = ApplicationName

  Try
    conn.Open()

    For Each username As
 String In usernames
      For Each rolename As String
 In rolenames
        userParm.Value = username
        roleParm.Value = rolename
        cmd.ExecuteNonQuery()
      Next
    Next
  Catch e As OdbcException
    ' Handle exception.
  Finally
    conn.Close()      
  End Try
End Sub
public override void RemoveUsersFromRoles(string[]
 usernames, string[] rolenames)
{
  foreach (string rolename in
 rolenames)
  {
    if (rolename == null || rolename == "")
      throw new ProviderException("Role name cannot be empty
 or null.");
    if (!RoleExists(rolename))
      throw new ProviderException("Role name not found.");
  }

  foreach (string username in
 usernames)
  {
    if (username == null || username == "")
      throw new ProviderException("User name cannot be empty
 or null.");

    foreach (string rolename in
 rolenames)
    {
      if (!IsUserInRole(username, rolename))
        throw new ProviderException("User is not in
 role.");
    }
  }


  OdbcConnection conn = new OdbcConnection(connectionString);
  OdbcCommand cmd = new OdbcCommand("DELETE FROM ["
 + usersInRolesTable + "]"  +
                                    " WHERE Username = ? AND Rolename = ? AND
 ApplicationName = ?", conn);

  OdbcParameter userParm = cmd.Parameters.Add("@Username", OdbcType.VarChar,
 255);
  OdbcParameter roleParm = cmd.Parameters.Add("@Rolename", OdbcType.VarChar,
 255);
  cmd.Parameters.Add("@ApplicationName", OdbcType.VarChar, 255).Value =
 ApplicationName;

  try
  {
    conn.Open();

    foreach (string username in
 usernames)
    {
      foreach (string rolename in
 rolenames)
      {
        userParm.Value = username;
        roleParm.Value = rolename;
        cmd.ExecuteNonQuery();
      }
    }
  }
  catch (OdbcException)
  {
    // Handle exception.
  }
  finally
  {
    conn.Close();      
  }
}
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照


このページでは「.NET Framework クラス ライブラリ リファレンス」からRoleProvider.RemoveUsersFromRoles メソッドを検索した結果を表示しています。
Weblioに収録されているすべての辞書からRoleProvider.RemoveUsersFromRoles メソッドを検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からRoleProvider.RemoveUsersFromRoles メソッド を検索

英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

RoleProvider.RemoveUsersFromRoles メソッドのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



RoleProvider.RemoveUsersFromRoles メソッドのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS