RoleProvider.CreateRole(String) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Přidá do zdroje dat novou roli pro nakonfigurovaný applicationNameobjekt .
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)
Parametry
- roleName
- String
Název role, která se má vytvořit.
Příklady
Následující příklad kódu ukazuje ukázkovou implementaci CreateRole metody.
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
Poznámky
CreateRole je volána CreateRole metodou Roles třídy přidat zadanou roli do zdroje dat pro nakonfigurovaný ApplicationName.
Pokud zadaný název role již existuje pro nakonfigurované applicationName, je nullnebo je prázdný řetězec, doporučujeme, aby váš poskytovatel vyvolá výjimku.
Pokud zadaný název role obsahuje čárku, doporučujeme, aby váš poskytovatel vyvolal výjimku.
Pokud váš zdroj dat omezuje délku názvu role, například prostřednictvím sloupce s pevnou délkou tabulky v databázi, doporučujeme vyvolat výjimku, pokud název role překročí maximální délku povolenou zdrojem dat.