AuthorizationStoreRoleProvider.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.
Role authorization-manager ilke deposuna yeni bir rol ekler.
public:
override void CreateRole(System::String ^ roleName);
public override void CreateRole (string roleName);
override this.CreateRole : string -> unit
Public Overrides Sub CreateRole (roleName As String)
Parametreler
- roleName
- String
Oluşturulacak rolün adı.
Özel durumlar
roleName
, null
değeridir.
Yapılandırılan applicationName
bulunamadı.
-veya-
Yapılandırılan scopeName
bulunamadı.
-veya- Authorization-manager çalışma zamanı sunucuda yüklü değil.
connectionStringName
özniteliği, var olmayan bir dosyaya bağlantı dizesine başvurur.
Örnek AuthorizationStoreRoleProvider dosya tabanlı bir ilke deposuyla yapılandırılır ve geçerli güven düzeyinde dosyaya okuma erişimine izin verilmez.
Örnekler
Aşağıdaki kod örneği, authorization-manager ilke deposunda yeni bir rol oluşturur. Rol yönetimini etkinleştiren bir Web.config dosyası örneği için bkz AuthorizationStoreRoleProvider. .
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Security" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
string[] rolesArray;
public void Page_Load(object sender, EventArgs args)
{
if (!IsPostBack)
{
// Bind roles to GridView.
rolesArray = Roles.GetAllRoles();
RolesGrid.DataSource = rolesArray;
RolesGrid.DataBind();
}
}
public void CreateRole_OnClick(object sender, EventArgs args)
{
string createRole = RoleTextBox.Text;
try
{
if (Roles.RoleExists(createRole))
{
Msg.Text = "Role '" + Server.HtmlEncode(createRole) + "' already exists. Please specify a different role name.";
return;
}
Roles.CreateRole(createRole);
Msg.Text = "Role '" + Server.HtmlEncode(createRole) + "' created.";
// Re-bind roles to GridView.
rolesArray = Roles.GetAllRoles();
RolesGrid.DataSource = rolesArray;
RolesGrid.DataBind();
}
catch (Exception e)
{
Msg.Text = "Role '" + Server.HtmlEncode(createRole) + "' <u>not</u> created.";
Response.Write(e.ToString());
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Sample: Create Role</title>
</head>
<body>
<form runat="server" id="PageForm">
<h3>Create a Role</h3>
<asp:Label id="Msg" ForeColor="maroon" runat="server" /><br />
Role name:
<asp:TextBox id="RoleTextBox" runat="server" />
<asp:Button Text="Create Role" id="CreateRoleButton"
runat="server" OnClick="CreateRole_OnClick" />
<br />
<asp:GridView runat="server" CellPadding="2" id="RolesGrid"
Gridlines="Both" CellSpacing="2" AutoGenerateColumns="false" >
<HeaderStyle BackColor="navy" ForeColor="white" />
<Columns>
<asp:TemplateField HeaderText="Roles" >
<ItemTemplate>
<%# Container.DataItem.ToString() %>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</form>
</body>
</html>
<%@ Page Language="VB" %>
<%@ Import Namespace="System.Web.Security" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Dim rolesArray() As String
Public Sub Page_Load(sender As Object, args As EventArgs)
If Not IsPostBack Then
' Bind roles to GridView.
rolesArray = Roles.GetAllRoles()
RolesGrid.DataSource = rolesArray
RolesGrid.DataBind()
End If
End Sub
Public Sub CreateRole_OnClick(sender As Object, args As EventArgs)
Dim createRole As String = RoleTextBox.Text
Try
If Roles.RoleExists(createRole) Then
Msg.Text = "Role '" & Server.HtmlEncode(createRole) & "' already exists. Please specify a different role name."
Return
End If
Roles.CreateRole(createRole)
Msg.Text = "Role '" & Server.HtmlEncode(createRole) & "' created."
' Re-bind roles to GridView.
rolesArray = Roles.GetAllRoles()
RolesGrid.DataSource = rolesArray
RolesGrid.DataBind()
Catch
Msg.Text = "Role '" & Server.HtmlEncode(createRole) & "' <u>not</u> created."
End Try
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>Sample: Create Role</title>
</head>
<body>
<form runat="server" id="PageForm">
<h3>Create a Role</h3>
<asp:Label id="Msg" ForeColor="maroon" runat="server" /><br />
Role name:
<asp:TextBox id="RoleTextBox" runat="server" />
<asp:Button Text="Create Role" id="CreateRoleButton"
runat="server" OnClick="CreateRole_OnClick" />
<br />
<asp:GridView runat="server" CellPadding="2" id="RolesGrid"
Gridlines="Both" CellSpacing="2" AutoGenerateColumns="false" >
<HeaderStyle BackColor="navy" ForeColor="white" />
<Columns>
<asp:TemplateField HeaderText="Roles" >
<ItemTemplate>
<%# Container.DataItem.ToString() %>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</form>
</body>
</html>
Açıklamalar
yöntemi CreateRole , ASP.NET uygulamasının Roles yapılandırma dosyasında (Web.config) belirtilen authorization-manager veri deposunda rol oluşturmak için sınıfı tarafından çağrılır.
Rol adları büyük/küçük harfe duyarlı değildir.