if (userlogin.UserName != null)
{
  FormsAuthenticationTicket authTicket = new FormsAuthenticationTicket(1, loginmodel.UserName, DateTime.Now, DateTime.Now.AddDays(day), true, "admins");
  string encryptedTicket = FormsAuthentication.Encrypt(authTicket);
  System.Web.HttpCookie authCookie = new System.Web.HttpCookie (FormsAuthentication.FormsCookieName, encryptedTicket);
  System.Web.HttpContext.Current.Response.Cookies.Add(authCookie);
  return Redirect("/admin/index.html");
}我已经弄了一上午了,不关闭浏览器能够记住用户,可是关闭浏览器之后,就无法记住用户了。是在mvc模式下的,用过滤器验证
public override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            if (!filterContext.HttpContext.User.Identity.IsAuthenticated)
            {
                filterContext.Result = new HttpUnauthorizedResult();
                filterContext.Result = new RedirectResult("/Mannager/LoginUI");
            }
            //base.OnActionExecuting(filterContext);
        }

解决方案 »

  1.   

    System.Web.HttpContext.Current.Response.Cookies.Add(authCookie); 我见你这里有写cookies,但没有见你读取啊
      

  2.   

    public override void OnActionExecuting(ActionExecutingContext filterContext)
            {
                if (!filterContext.HttpContext.User.Identity.IsAuthenticated)
                {
                    filterContext.Result = new HttpUnauthorizedResult();
                    filterContext.Result = new RedirectResult("/Mannager/LoginUI");
                }
                //base.OnActionExecuting(filterContext);
            } 这段代码不是读取吗
      

  3.   

    西索兄,能帮帮忙么,我真的是不知道哪里弄错了,我在web.config里面没有设置,web.config需要设置么?