Niedziałająca kontrolka LoginStatus w asp.net

0

Witam

Zrobiłem rejestrację w mojej aplikacji asp.net wykorzystując membership i wszysto idzie ok, ale nie mogę uporać się z problemem logowania użytkowników.
Mam metodę logowania w pliku login.aspx:

 public void LogOn(object sender, EventArgs e)
    {
        if (Membership.ValidateUser(login_name.Text, login_pass.Text))
        {
            login_label.Text = "Zostałeś zalogowany pomyślnie, za chwilę zostaniesz przekierowany do strony głównej";
            FormsAuthentication.RedirectFromLoginPage(login_name.Text, true);

        }
        else
        {
            login_label.Text = "Nie można zalogować. Spróbuj ponownie";
        }
    }

oraz kontrolki w Masterpage.aspx:

 <form id="main_form" runat="server">
    <div>
        <div class="header" runat="server">
        </div>
        <div class="right_corner_element">
        <asp:LoginStatus ID="loginstatus1" runat="server" LoginText="Logowanie/rejestracja" LogoutText="Wyloguj się"
          />
            <asp:LoginView id="loginview1" runat="server">
            <AnonymousTemplate>
            <h2>Użytkownik niezalogowany</h2>
            </AnonymousTemplate>
            <LoggedInTemplate>
                <asp:LoginName runat="server" FormatString="Zalogowany jako {0}"/>
            </LoggedInTemplate>
            </asp:LoginView>
        <h1>Oferty nieruchomości</h1>
       </div>
    </div>
    <asp:ContentPlaceHolder ID="main_content" runat="server"></asp:ContentPlaceHolder>
    </form> 

Problem jest w tym, że metoda membership.validateuser zwraca True, ale kontrolka nie zmienia się po przekierowaniu na stronę główną tj. gdy użytkownik jest zalogowany, powinna się wyświetlić kontrolka LoginName, a z nieznanych mi przyczyn ciągle się wyświetla anonymoustemplate.
O co w tym chodzi?

0

No dobra, wykminiłem już, że właściwość page.user.identity.name jest null, dlatego też ciągle wyświetla mi się anonymoustemplate, ale ciągle nie wiem skąd się bierze ten null? Polecenie: FormsAuthentication.RedirectFromLoginPage(login_name.Text, true); powinno tu sprawę załatwić. O co chodzi?

0

Dobra, znalazłem...
Problemem była konfiguracja strony: w elemencie <authentication> zostawiłem tylko loginurl i name, całą resztę wywaliłem...
Wątek do zamknięcia

1 użytkowników online, w tym zalogowanych: 0, gości: 1