мой логин работал нормально, и вдруг он снова перенаправляет меня на страницу логина, даже если он успешен, я ничего не изменил, так как он работал, и я действительно не могу понять, что вызвало это.
какие-либо идеи, пожалуйста?
это контроллер:
//Login
[HttpGet]
public ActionResult Login()
{
return View();
}
//Login POST
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Login(UserLogin login, string ReturnUrl= "")
{
string message = "";
using (UsersdbEntities dc=new UsersdbEntities())
{
//check if the user and mail are valid in db and correct
var v = dc.Users.Where(a => a.UserMail == login.UserMail).FirstOrDefault();
if(v!=null)
{
if (string.Compare(Crypto.Hash(login.PasswordUser), v.PasswordUser) == 0)
{
int timeout = login.RememberMe ? 525600 : 1; //525600 minutes=1 year
var ticket = new FormsAuthenticationTicket(login.UserMail, login.RememberMe, timeout);
string encrypted = FormsAuthentication.Encrypt(ticket);
var cookie = new HttpCookie(FormsAuthentication.FormsCookieName, encrypted);
cookie.Expires = DateTime.Now.AddMinutes(timeout);
cookie.HttpOnly = true;
Response.Cookies.Add(cookie);
if (Url.IsLocalUrl(ReturnUrl))
{
return Redirect(ReturnUrl);
}
else
{
return RedirectToAction("PersonalArea", "User");
}
}
else
{
message = "invalid credentials";
}
}
else
{
message = "invalid credentials";
}
}
ViewBag.Message = message;
return View();
}
это результат действия личной территории:
[Authorize]
public ActionResult PersonalArea()
{
return View();
}