Ответ 1
Try:
if ( Request.Cookies["MyCookie"] != null )
{
var c = new HttpCookie( "MyCookie" );
c.Expires = DateTime.Now.AddDays( -1 );
Response.Cookies.Add( c );
}
Дополнительная информация о MSDN.
Мне нужно удалить cookie проверки подлинности вручную (вместо использования FormsAuthentication.SignOut, по каким-то причинам не работает). Я попробовал
System.Web.HttpContext.Request.Cookies.Remove(cookieName); // for example .ASPXAUTH
System.Web.HttpContext.Response.Cookies.Remove(cookieName); // for example .ASPXAUTH
FormsAuthentication.SignOut(); // I don't know why this one does not work
Ни одна из этих команд не работает. На самом деле файлы cookie Response пусты и запрос cookie содержит файл cookie, который я хочу удалить, когда выполняются следующие команды: он больше не содержит куки файл, который я удалил, но в браузере cookie все еще существует, и я могу делать то, что авторизованные пользователи могут даже после выписка.
Try:
if ( Request.Cookies["MyCookie"] != null )
{
var c = new HttpCookie( "MyCookie" );
c.Expires = DateTime.Now.AddDays( -1 );
Response.Cookies.Add( c );
}
Дополнительная информация о MSDN.