如何在ASP.NET中用户上次访问网站时记住

时间:2014-02-24 20:34:49

标签: asp.net-mvc asp.net-mvc-5

我想记住用户上次访问我的网站的时间。我看到以下选项:

  1. 记住上次登录时间并禁用记住cookie
  2. 在数据库中的每个请求后保存信息
  3. 两种选择都不是理想的解决方案。

2 个答案:

答案 0 :(得分:1)

您可以创建一个Cookie,其中包含有关访问您网站的最后一天的信息。例如:

protected void Application_BeginRequest(object sender, EventArgs e)
{
    if (Request.Cookies["last-visited"] == null)
    {
        /*Log if the user visited you app here somewhere, data base etc*/

        /*Create a cookie to hold that you already logged this visit*/
        var lastVisitedCookie = new HttpCookie("last-visited");
        lastVisitedCookie.Expires.AddDays(1);

        Response.Cookies.Add(lastVisitedCookie);
    }
}

为了保护您的Cookie,您可以在其中加入一些加密内容,以确保为您的应用生成它,而不是为其他人生成。

答案 1 :(得分:1)

你必须使用某种状态来保存这些信息,你将无法摆脱它。

您可以选择数据库或cookie。

如果您需要知道用户是谁,我会使用数据库,如果您不在乎,我会使用cookie,但只需知道他们以前就已经使用过。