RoleProvider.CreateRole(String) Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Adiciona um novo papel à fonte de dados para o .applicationName
public:
abstract void CreateRole(System::String ^ roleName);
public abstract void CreateRole(string roleName);
abstract member CreateRole : string -> unit
Public MustOverride Sub CreateRole (roleName As String)
Parâmetros
- roleName
- String
O nome do papel a criar.
Exemplos
O exemplo de código seguinte mostra uma implementação exemplar do CreateRole método.
public override void CreateRole(string rolename)
{
if (rolename == null || rolename == "")
throw new ProviderException("Role name cannot be empty or null.");
if (rolename.Contains(","))
throw new ArgumentException("Role names cannot contain commas.");
if (RoleExists(rolename))
throw new ProviderException("Role name already exists.");
if (rolename.Length > 255)
throw new ProviderException("Role name cannot exceed 255 characters.");
OdbcConnection conn = new OdbcConnection(connectionString);
OdbcCommand cmd = new OdbcCommand("INSERT INTO Roles " +
" (Rolename, ApplicationName) " +
" Values(?, ?)", conn);
cmd.Parameters.Add("@Rolename", OdbcType.VarChar, 255).Value = rolename;
cmd.Parameters.Add("@ApplicationName", OdbcType.VarChar, 255).Value = ApplicationName;
try
{
conn.Open();
cmd.ExecuteNonQuery();
}
catch (OdbcException)
{
// Handle exception.
}
finally
{
conn.Close();
}
}
Public Overrides Sub CreateRole(rolename As String)
If rolename Is Nothing OrElse rolename = "" Then _
Throw New ProviderException("Role name cannot be empty or null.")
If rolename.Contains(",") Then _
Throw New ArgumentException("Role names cannot contain commas.")
If RoleExists(rolename) Then _
Throw New ProviderException("Role name already exists.")
If rolename.Length > 255 Then _
Throw New ProviderException("Role name cannot exceed 255 characters.")
Dim conn As OdbcConnection = New OdbcConnection(connectionString)
Dim cmd As OdbcCommand = New OdbcCommand("INSERT INTO Roles " & _
" (Rolename, ApplicationName) " & _
" Values(?, ?)", conn)
cmd.Parameters.Add("@Rolename", OdbcType.VarChar, 255).Value = rolename
cmd.Parameters.Add("@ApplicationName", OdbcType.VarChar, 255).Value = ApplicationName
Try
conn.Open()
cmd.ExecuteNonQuery()
Catch e As OdbcException
' Handle exception.
Finally
conn.Close()
End Try
End Sub
Observações
CreateRoleé chamado pelo CreateRole método da Roles classe para adicionar o papel especificado à fonte de dados para o .ApplicationName
Se o nome do papel especificado já existir para a configuração applicationName, é null, ou for uma cadeia vazia, recomendamos que o seu fornecedor faça uma exceção.
Se o nome da função especificada contiver uma vírgula, recomendamos que o seu fornecedor faça uma exceção.
Se a sua fonte de dados restringir o comprimento do nome do papel, por exemplo, através de uma coluna de comprimento fixo de uma tabela numa base de dados, recomendamos que faça uma exceção se o nome do papel exceder o comprimento máximo permitido pela fonte de dados.