Поделиться через


RoleGroup Класс

Определение

Связывает шаблон содержимого в элементе управления 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()

Возвращает список ролей через запятую, связанный с данной группой ролей.

Применяется к

См. также раздел