RoleGroup 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
将 LoginView 控件中的内容模板与为网站定义的一个或多个角色关联。 此类不能被继承。
public ref class RoleGroup sealed
public sealed class RoleGroup
type RoleGroup = class
Public NotInheritable Class RoleGroup
- 继承
-
RoleGroup
示例
下面的代码示例将自定义模板分配给 ContentTemplate 属性。
<%@ Page Language="C#"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
private class CustomTemplate : ITemplate
{
public void InstantiateIn(System.Web.UI.Control container)
{
LoginName ln = new LoginName();
LoginStatus ls = new LoginStatus();
Literal lc = new Literal();
lc.Text = "<br />";
ln.FormatString = "Welcome, {0}. This line is from the template.";
container.Controls.Add(ln);
container.Controls.Add(lc);
container.Controls.Add(ls);
}
}
void Page_Load(Object sender, EventArgs e)
{
// <Snippet2>
RoleGroup rg = new RoleGroup();
rg.ContentTemplate = new CustomTemplate();
// <Snippet3>
String[] RoleList = {"users"};
rg.Roles = RoleList;
// </Snippet3>
RoleGroupCollection rgc = LoginView1.RoleGroups;
rgc.Add(rg);
// </Snippet2>
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
<asp:LoginView id="LoginView1" runat="server">
<AnonymousTemplate>
You are not logged in.<br />
<asp:LoginStatus id="LoginStatus1" runat="server"></asp:LoginStatus>
</AnonymousTemplate>
<LoggedInTemplate>
You are logged in as
<asp:LoginName id="LoginName1" runat="server" />. This message is not from the template.<br />
<asp:LoginStatus id="Loginstatus2" runat="server"></asp:LoginStatus>
</LoggedInTemplate>
</asp:LoginView>
</form>
</body>
</html>
<%@ Page Language="VB"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Private Class CustomTemplate
Implements ITemplate
Public Sub InstantiateIn(ByVal container As System.Web.UI.Control) _
Implements System.Web.UI.ITemplate.InstantiateIn
Dim ln As New LoginName
Dim ls As New LoginStatus
Dim lc As New Literal
lc.Text = "<br />"
ln.FormatString = "Welcome, {0}. This line is from the template."
container.Controls.Add(ln)
container.Controls.Add(lc)
container.Controls.Add(ls)
End Sub
End Class
Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
' <Snippet2>
Dim rg As New RoleGroup
rg.ContentTemplate = New CustomTemplate
' <Snippet3>
Dim RoleList(1) As String
RoleList(0) = "users"
' </Snippet3>
rg.Roles = RoleList
Dim rgc As RoleGroupCollection = LoginView1.RoleGroups
rgc.Add(rg)
' </Snippet2>
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>ASP.NET Example</title>
</head>
<body>
<form id="form1" runat="server">
<asp:LoginView id="LoginView1" runat="server">
<AnonymousTemplate>
You are not logged in.<br />
<asp:LoginStatus id="LoginStatus1" runat="server"></asp:LoginStatus>
</AnonymousTemplate>
<LoggedInTemplate>
You are logged in as
<asp:LoginName id="LoginName1" runat="server" />. This message is not from the template.<br />
<asp:LoginStatus id="Loginstatus2" runat="server"></asp:LoginStatus>
</LoggedInTemplate>
</asp:LoginView>
</form>
</body>
</html>
注解
可以使用 LoginView 控件定义一组内容模板,这些模板包含根据网站管理员分配的角色向网站用户显示的内容。 RoleGroup控件使用 LoginView 类将内容模板与一组角色相关联。
若要向角色组动态分配模板,请将 属性设置为 ContentTemplate 对实现 ITemplate 接口的 对象的引用。
必须配置角色管理才能使用 RoleGroup 类。 有关详细信息,请参阅 了解角色管理。
构造函数
RoleGroup() |
初始化 RoleGroup 类的新实例。 |
属性
ContentTemplate |
获取或设置与该角色组关联的内容模板。 |
Roles |
获取或设置与该角色组关联的角色。 |
方法
ContainsUser(IPrincipal) |
指示指定的用户是否为角色组中任一角色的成员。 |
Equals(Object) |
确定指定对象是否等于当前对象。 (继承自 Object) |
GetHashCode() |
作为默认哈希函数。 (继承自 Object) |
GetType() |
获取当前实例的 Type。 (继承自 Object) |
MemberwiseClone() |
创建当前 Object 的浅表副本。 (继承自 Object) |
ToString() |
返回与该角色组关联的用逗号分隔的角色列表。 |