【发布时间】:2011-01-07 05:04:58
【问题描述】:
大家好,
- 在 asp.net Web 应用程序中实现记住我选项的可能方法是什么? alt text http://www.freeimagehosting.net/uploads/0f9ebba1bb.jpg
【问题讨论】:
标签: asp.net web-applications remember-me
大家好,
【问题讨论】:
标签: asp.net web-applications remember-me
如果您使用表单身份验证,只需将 true 作为第二个参数传递给 RedirectFromLoginPage。
否则,思路基本相同:你需要创建一个所谓的“persistent cookie”,这意味着你必须指定正确的cookie过期日期。
【讨论】:
看这里:How to: Create an ASP.NET Login Page
<asp:Login ID="Login1"
runat="server"
DestinationPageUrl="~/MembersHome.aspx">
</asp:Login>
【讨论】:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
if (Request.Cookies["myCookie"] != null)
{
HttpCookie cookie = Request.Cookies.Get("myCookie");
txtUserName.Text = cookie.Values["username"];
txtPassword.Attributes.Add("value", cookie.Values["password"]);
}
}
}
protected void btnLogin_Click(object sender, EventArgs e)
{
bool IsRemember = chkRememberMe.Checked;
if (IsRemember)
{
myCookie.Values.Add("username", txtUserName.Text);
myCookie.Values.Add("password", txtPassword.Text);
myCookie.Expires = DateTime.Now.AddDays(15);
}
else
{
myCookie.Values.Add("username", string.Empty);
myCookie.Values.Add("password", string.Empty);
myCookie.Expires = DateTime.Now.AddMinutes(5);
}
Response.Cookies.Add(myCookie);
}
【讨论】: