Файлы cookie, которые не будут удалены - PullRequest
1 голос
/ 09 февраля 2012

Я чувствую, что меня съел монстр печенья.Я удаляю куки, и они возвращаются.Выйдя из системы, я выполняю этот код:

    protected void Page_Load(object sender, EventArgs e)
    {
        DeleteCookie("UserId");
        DeleteCookie("UserName");

        Session.Abandon();
        GoToPublicHomePage();
    }

    private void DeleteCookie(string name)
    {
        if (Request.Cookies[name] != null)
        {
            HttpCookie cookie = new HttpCookie(name);
            cookie.Expires = DateTime.Now.AddDays(-1);
            Response.Cookies.Add(cookie);
        }
    }

Непосредственно перед вызовом «GoToPublicHome ()» я проверяю файлы Request.Cookies и файлы cookie UserId и UserName в Response.мой код Global.asax -> Session_Start, который выполняется сразу после вызова GoToPublicHome, они вернулись ... как плохая копейка.

Ответы [ 2 ]

1 голос
/ 09 февраля 2012

Код, который вы пишете, инструктирует .Net создавать новый HttpCookie, а не создавать «только если не существует». На странице MSDN есть пример: http://msdn.microsoft.com/en-us/library/system.web.httpcookie.aspx

0 голосов
/ 10 февраля 2012

Как насчет Response.Cookies.Remove(name)?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...