使用ASP.NET MVC身份验证的"记住我"不起作用

Tom*_*han 14 .net membership cookies asp.net-mvc

我有一个标准的ASP.NET MVC(RC Refresh)Web项目,带有标准的ASP.NET成员资格提供程序和项目模板中包含的Account控制器.

当我在登录表单中选中"记住我"时,我仍然没有被网站记住.(Firefox记得我的用户名和密码,但我预计会发生的事情是自动登录).

我是否必须手动设置和检查cookie?如果是这样,应该如何做到最好?

Tod*_*ith 17

您需要将true/false传递给SetAuthCookie方法.

public ActionResult Login (string email, string password, bool rememberMe, string returnUrl)  
{

    // snip

    FormsAuth.SetAuthCookie(username, rememberMe); // <- true/false

    // snip
}
Run Code Online (Sandbox Code Playgroud)

并确保它bool rememberMe反映了登录页面上复选框的状态.