Это, кажется, очень мелочный вопрос, но все же я не могу его запустить. Я создаю веб-приложение asp.net, и здесь я использую проверку подлинности. Следующие шаги я выполнил.ASP.NET не перенаправляет на defaultURL автоматически после окончания сессии
1) В web.config этого является запись
<authentication mode="Forms"> <forms loginUrl="Default.aspx" timeout="30" defaultUrl="StockTips.aspx" cookieless="UseCookies" slidingExpiration="true" /> </authentication> <sessionState mode="InProc" cookieless="false" timeout="30" />
2) В default.aspx я использовал пользовательскую проверку подлинности и после проверки подлинности проходит я перенаправлении defaultUrl упоминается в web.config. Ниже приведен код. Это работает нормально.
Session["test"] = "testing"; FormsAuthentication.RedirectFromLoginPage(Login1.UserName, true);
Login1 является администратором входа в систему asp.net.
3) В StockTips.aspx (который является defaulturl), в поле Logout linkbutton click event Я пытаюсь отказаться от сеанса, чтобы он автоматически перенаправлялся на loginurl (default.aspx). Этого не происходит. Он остается на той же странице, то есть StockTips.aspx. Ниже приведен код.
protected void lnkLogout_Click(object sender, EventArgs e) { string str = Session["test"].ToString(); Session.Abandon(); //Session.RemoveAll(); //Session.Clear(); //Response.Cookies.Remove("ASP.NET_SessionId"); //Response.Cookies["ASP.NET_SessionId"].Value = string.Empty; //Response.Cookies.Add(new HttpCookie("ASP.NET_SessionId", "")); //FormsAuthentication.SignOut(); string str1 = Session["test"].ToString(); }
Значение в сеансе ["test"] также сохраняется. Я пробовал прокомментированный код выше. Я не хочу явно писать Response.Redirect для loginurl, так как я уверен, что после того, как сессия будет отключена, она автоматически перенаправляется на loginurl. Но почему-то это не работает.
Я не уверен, поможет ли следующая информация, но все же подумал о ее добавлении. У меня есть главная страница, в которой открывается default.aspx и stocktips.aspx. LinkButton внутри sharetips.aspx, а не на главной странице.
Пожалуйста, дайте мне знать, если вам нужна дополнительная информация с моей стороны.
Пожалуйста, помогите!
Заранее благодарен.
С уважением,
Samar
В поле "Имя" атрибут тег «форма» u hv writt ru "WhateverYourAuthNameIs". По умолчанию это «.ASPXAUTH». Что мне следует вводить вместо «WhateverYourAuthNameIs»? – samar
Каков ваш режим аутентификации? Если вы используете аутентификацию форм ASP.Net, то под атрибутом name указывается «MyAuthCookie». –
Я думаю, что ваш сеанс кода заканчивается, но при нажатии любой кнопки, которая вызывает обратную передачу, asp.net не автоматически перенаправляется на loginUrl. Я слишком много ожидаю от ASP.NET? Это то, что asp.net не перенаправляет на loginUrl после истечения срока действия сеанса и что я должен сделать это сам? – samar