Прочитать на английском

Поделиться через


RoleProvider.IsUserInRole(String, String) Метод

Определение

Получает значение, позволяющее определить, может ли заданный пользователь выполнять указанную роль для настроенного applicationName.

public abstract bool IsUserInRole (string username, string roleName);

Параметры

username
String

Имя пользователя для поиска.

roleName
String

Роль, в которой следует выполнить поиск.

Возвращаемое значение

Значение true, если заданный пользователь относится к указанной роли для настроенного applicationName; в противном случае — значение false.

Примеры

В следующем примере кода показан пример реализации IsUserInRole метода .

public override bool IsUserInRole(string username, string rolename)
{
  if (username == null || username == "")
    throw new ProviderException("User name cannot be empty or null.");
  if (rolename == null || rolename == "")
    throw new ProviderException("Role name cannot be empty or null.");

  bool userIsInRole = false;

  OdbcConnection conn = new OdbcConnection(connectionString);
  OdbcCommand cmd = new OdbcCommand("SELECT COUNT(*) FROM UsersInRoles "  +
                                    " WHERE Username = ? AND Rolename = ? AND ApplicationName = ?", conn);

  cmd.Parameters.Add("@Username", OdbcType.VarChar, 255).Value = username;
  cmd.Parameters.Add("@Rolename", OdbcType.VarChar, 255).Value = rolename;
  cmd.Parameters.Add("@ApplicationName", OdbcType.VarChar, 255).Value = ApplicationName;

  try
  {
    conn.Open();

    int numRecs = (int)cmd.ExecuteScalar();

    if (numRecs > 0)
    {
      userIsInRole = true;
    }
  }
  catch (OdbcException)
  {
    // Handle exception.
  }
  finally
  {
    conn.Close();      
  }

  return userIsInRole;
}

Комментарии

Метод IsUserInRole вызывается методом IsUserInRole класса , Roles чтобы определить, связан ли текущий вошедший в систему пользователь с ролью из источника данных для настроенного ApplicationName.

Если указанное имя пользователя — null или является пустой строкой, рекомендуется, чтобы поставщик выдаст исключение.

Если указанное имя роли — null или является пустой строкой, рекомендуется, чтобы поставщик выдаст исключение.

Применяется к

Продукт Версии
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1

См. также раздел