скрыть выход из системы после входа в систему - PullRequest
1 голос
/ 12 июля 2011

Мне нужно отобразить ссылку для входа в систему, и как только они войдут в систему, мне нужно, чтобы ссылка отображалась как отключенная.

вот что у меня есть:

<div class="account-links">

<a href="<%=Page.ResolveUrl("~/logout.aspx")%>" class="ico-logout">
<%=GetLocaleResourceString("Account.Logout")%></a>

<% if (NopContext.Current.User != null && NopContext.Current.User.IsAdmin)
               { %>
<a href="<%=Page.ResolveUrl("~/administration/")%>" class="ico-admin">
  <%=GetLocaleResourceString("Account.Administration")%></a>
    <%} %>


</div>
    <div class="header-links">
        <ul>
            <asp:LoginView ID="topLoginView" runat="server">
                <AnonymousTemplate>

                </AnonymousTemplate>
                <LoggedInTemplate>
                    <li>
                        <a href="<%= SEOHelper.GetMyAccountUrl()%>" class="account"><%=Page.User.Identity.Name %></a>
                        <% if (NopContext.Current.IsCurrentCustomerImpersonated)
                           { 
                        %>
                        <span class="impersonate">(<%=string.Format(GetLocaleResourceString("Account.ImpersonatedAs"), this.CustomerService.UsernamesEnabled ? Server.HtmlEncode(NopContext.Current.User.Username) : Server.HtmlEncode(NopContext.Current.User.Email))%>
                            -
                            <asp:LinkButton runat="server" ID="lFinishImpersonate" Text="<% $NopResources:Account.ImpersonatedAs.Finish %>"
                                ToolTip="<% $NopResources:Account.ImpersonatedAs.Finish.Tooltip %>" OnClick="lFinishImpersonate_Click"
                                CssClass="finish-impersonation"></asp:LinkButton>)</span>
                        <%} %>
                    </li>
                    <li></li>
                    <% if (this.ForumService.AllowPrivateMessages)
                       { %>
                    <li><a href="<%=Page.ResolveUrl("~/privatemessages.aspx")%>" class="ico-inbox">
                        <%=GetLocaleResourceString("PrivateMessages.Inbox")%></a>
                        <asp:Literal runat="server" ID="lUnreadPrivateMessages" />
                    </li>
                    <%} %>
                </LoggedInTemplate>
            </asp:LoginView>

Ответы [ 2 ]

1 голос
/ 12 июля 2011

Если я не понял неправильно, просто добавьте ссылку на выход из системы к «Зарегистрированному шаблону», добавьте в нее событие click и выйдите из системы в коде.1003 *

FormsAuthentication.SignOut() 

сделает это

Затем для входа в систему, вставьте ссылку на страницу входа в свой «анонимный шаблон».

0 голосов
/ 12 июля 2011

В Asp.Net MVC есть свойство Request.IsAuthenticated, которое вы можете использовать для проверки, если User.Identity.Name не равно NULL.Надеюсь, вам доступно что-то подобное.

...