RoleProvider.CreateRole(String) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Yapılandırılan applicationName
için veri kaynağına yeni bir rol ekler.
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)
Parametreler
- roleName
- String
Oluşturulacak rolün adı.
Örnekler
Aşağıdaki kod örneği, yönteminin CreateRole örnek uygulamasını gösterir.
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
Açıklamalar
CreateRole, yapılandırılan için veri kaynağına belirtilen rolü eklemek üzere sınıfının yöntemi Roles tarafından CreateRole çağrılırApplicationName.
Yapılandırılmış applicationName
null
için belirtilen rol adı zaten varsa veya boş bir dizeyse, sağlayıcınızın bir özel durum oluşturmasını öneririz.
Belirtilen rol adı virgül içeriyorsa, sağlayıcınızın bir özel durum oluşturmasını öneririz.
Veri kaynağınız, örneğin veritabanındaki bir tablonun sabit uzunluktaki bir sütunu aracılığıyla rol adının uzunluğunu kısıtlarsa, rol adı veri kaynağı tarafından izin verilen uzunluk üst sınırını aşarsa bir özel durum oluşturmanızı öneririz.
Şunlara uygulanır
Ayrıca bkz.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin