Frage

Ich habe Probleme mit einem Loginview für das, was ich brauche. Kann mir jemand sagen, ob ich dies in einem Loginview tun kann (und wie) oder wenn ich Code-Behind verwenden muß.

Ich habe zwei Rollen - Administrator und Benutzer. Ich möchte dynamisch Links auf die Rolle basiert anzuzeigen. Ich werde schreiben, was ich in einer if-Anweisung will, weil es einfacher ist, zu erklären:

if (role = Administrator) //Display only if administrator.
   Show Hyperlink 1
   Show Hyperlink 2
else
   if (role = User) //Display only if user.
      Show Hyperlink 3
      Show Hyperlink 4
   endif
   //Display these if a user or if non-authenticated user...
   Show Hyperlink 5
   Show Hyperlink 6
   Show Hyperlink 7 
endif
War es hilfreich?

Lösung

Versuchen Sie so etwas wie dieses verwendet es die RoleGroups Eigenschaft. Sie können auch die Role für den Benutzer angeben, aber wenn Sie die LoggedInTemplate verwenden wird es dauern, beeinflussen für alle, dass angemeldeten Benutzer keine Gruppe in der Role haben. Schließlich ist es nicht wirklich eine Möglichkeit, eine gemeinsame Vorlage wie das Szenario haben Sie mit Benutzer / Anonymous beschrieben, so können Sie zu duplizieren haben. Eine weitere Möglichkeit ist, dass Sie gehören sie nicht in Ihrem Loginview und zeigen sie an die Administratoren als auch.

<asp:LoginView runat="server" ID="LoginView">
    <AnonymousTemplate>
        <asp:HyperLink runat="server" ID="Link5" />
        <asp:HyperLink runat="server" ID="Link6" />
        <asp:HyperLink runat="server" ID="Link7" />
    </AnonymousTemplate>
    <LoggedInTemplate>
        <asp:HyperLink runat="server" ID="Link3" />
        <asp:HyperLink runat="server" ID="Link4" />
        <asp:HyperLink runat="server" ID="Link5" />
        <asp:HyperLink runat="server" ID="Link6" />
        <asp:HyperLink runat="server" ID="Link7" />
    </LoggedInTemplate>
    <RoleGroups>
        <asp:RoleGroup Roles="Administrator">
            <ContentTemplate>
                <asp:HyperLink runat="server" ID="Link1" />
                <asp:HyperLink runat="server" ID="Link2" />
            </ContentTemplate>
        </asp:RoleGroup>
    </RoleGroups>
</asp:LoginView>

Andere Tipps

Sie können sicher erreichen, was Sie suchen mit dem ASP.NET Loginview-Steuerelement.

Sie werden in die aussehen wollen " Multiview / Blick Kontrollen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top