Пожалуйста заметьте мастер-страницу код здесьвебов-страница Перенаправление логина управления и LoginView после успешного входа
<asp:LoginView ID="LoginView1" runat="server" ViewStateMode="Disabled">
<AnonymousTemplate>
<ul>
<li><a id="registerLink" runat="server" href="~/LogReg.aspx">Register</a></li>
<li><a id="loginLink" runat="server" href="~/LogReg.aspx">Log in</a></li>
</ul>
</AnonymousTemplate>
<LoggedInTemplate>
<ul>
<li><a id="manage" runat="server" class="username" href="~/Account/Manage.aspx" title="Manage your account">
<asp:LoginName ID="LoginName2" runat="server" CssClass="username" />
</a>
</li>
<li><a id="A2" runat="server" href="~/Logout.aspx">Log Out</a></li>
</ul>
</LoggedInTemplate>
</asp:LoginView>
Это Войти кодовую страницу
<asp:Login ID="Login1" runat="server" Height="198px" Width="297px" DisplayRememberMe="False" OnAuthenticate="Login1_Authenticate" UserNameLabelText="Email:">
<InstructionTextStyle Font-Italic="True" ForeColor="Black" />
<LoginButtonStyle Font-Size="Small" />
<TextBoxStyle Font-Size="0.8em" CssClass="float-right" Width="180px" Height="12px" />
<LabelStyle CssClass="float-left" />
<TitleTextStyle CssClass="task-title" />
</asp:Login>
Событие аутентификации контроля входа выглядит :
protected void Login1_Authenticate(object sender, AuthenticateEventArgs e)
{
string un = Login1.UserName;
string pw = Login1.Password;
var c = db.customers.Where(s => s.customer_email == un && s.customer_password == pw && s.customer_deleted != true);
if (c.Count() == 1)
{
e.Authenticated = true;
//Something to redirect //Response.Redirect(Page.PreviousPage.ToString());
}
else
e.Authenticated = false;
}
проблема в том, что при использовании функции Response.Redirect здесь она успешно перенаправляется, но шаблон loginView возвращается к анонимному шаблону. И если я не использую перенаправление, шаблон изменяется на LoggedInTemplate, но я хочу перенаправить его на предыдущую страницу. Я использовал свойство destinationPageUrl, но это то же самое. Спасибо за помощь :)
Отлично! Спасибо :) –
Page.PreviousPage показывает null в этом случае, можете ли вы также рассказать мне, какой шаг следует предпринять для перенаправления на любую предыдущую страницу, кроме использования сеансов? Спасибо, получил его сейчас. –
Вы можете попробовать ** Request.UrlReferrer **. Однако я не рекомендую ни один, потому что они ненадежны. Вместо этого мы обычно используем ** ReturnUrl в QueryString **. – Win