Как завершить сеанс пользователя и убедиться, что пользователь вышел из системы? - PullRequest
4 голосов
/ 29 июля 2010

Я новичок в .aspx, и теперь дело в том, что, поскольку я делаю веб-проект с поддержкой, у меня есть этот логин от пользователя.Я перетащил шаблон входа в систему и затем использовал

Session["Authentication"] = username.Tostring();

для хранения информации о текущем зарегистрированном пользователе и так далее.Теперь я даже использовал гиперссылку «Выход» в правом верхнем углу, а затем перенес ее на страницу входа.(Если это неправильный способ передачи, пожалуйста, дайте мне знать, я изучаю все через Интернет) ..

Теперь, если я работаю в Интернете, я могу легко войти, но когда я выхожу через гиперссылку «Выйти»это снова приведет меня на страницу входа в систему, но если я нажму кнопку «Назад» в браузере, он снова перенесет управление на страницу данных, и я снова смогу выполнить операцию с данными.

Я использовал это

Session["Authenticate"] = null

при загрузке страницы страницы входа в систему, так что только при нажатии кнопки входа в систему пользователь может войти снова с помощью

Session["Authenticate"] = username.Tostring();

Затемя использовал проверку на каждой странице загрузки страниц данных

if(Session[Authentiacte"] == null)
     Server.Tranfer("LoginPage.aspx");

Это не решило мою проблему. Пожалуйста, кто-нибудь может дать подсказку, ссылку или совет, чтобы улучшить мой способ выхода из системы?Я разработал этот проект без каких-либо знаний .net или aspx, и я все еще изучаю все, пожалуйста, заранее выскажите мои сомнения, спасибо.

1 Ответ

8 голосов
/ 29 июля 2010
HttpContext.Current.Session.Clear();
HttpContext.Current.Session.Abandon();
HttpContext.Current.User = null;
System.Web.Security.FormsAuthentication.SignOut(); // if forms auth is used
...