Использование Cookie в Asp.Net Mvc 4
У меня есть веб-приложение вAsp.Net MVC4 и я хочу использоватьпеченье для пользователявход и выход из системы. Итак, мои действия следующие:
Действие входа
[HttpPost]
public ActionResult Login(string username, string pass)
{
if (ModelState.IsValid)
{
var newUser = _userRepository.GetUserByNameAndPassword(username, pass);
if (newUser != null)
{
var json = JsonConvert.SerializeObject(newUser);
var userCookie = new HttpCookie("user", json);
userCookie.Expires.AddDays(365);
HttpContext.Response.Cookies.Add(userCookie);
return RedirectToActionPermanent("Index");
}
}
return View("UserLog");
}
LogOut Action
public ActionResult UserOut()
{
if (Request.Cookies["user"] != null)
{
var user = new HttpCookie("user")
{
Expires = DateTime.Now.AddDays(-1),
Value = null
};
Response.Cookies.Add(user);
}
return RedirectToActionPermanent("UserLog");
}
И я использую этот файл cookie в _Loyout следующим образом:
@using EShop.Core
@using Newtonsoft.Json
@{
var userInCookie = Request.Cookies["user"];
}
...
@if (userInCookie != null && userInCookie.Value)
{
<a href="#">Salam</a>
<a href="@Url.Action(" userout",="" "home")"="">Cıxış</a>
}
else
{
<a href="@Url.Action(" userlog",="" "home")"="">Giriş</a>
}
Но когда ящелчок * UserOut * действие это действие происходит в первый раз, но потом это нет работа. Я поставил точку останова для поиска процесса, но этоUserLog действие неUserOut, Мой вопрос заключается в том, где я использую неправильный способ cookie? Каков наилучший способ использования файлов cookie вAsp.Net Mvc4 по этому сценарию?