2

我在 .net 4.0 中创建了一个网站,用户首先登录并重定向到仪表板页面,登录后用户面板中有 8 个页面,母版页面中有一个注销按钮。我想存储用户注销的页面以及下次登录时,他的会话将被恢复(重定向到他注销的同一页面)。任何人都可以给我任何提示??

4

4 回答 4

4

您将会话与Sessions...混淆Session是一个 ASP.NET 类,只要您在应用程序中激活了会话支持(默认情况下它处于启用状态,并且默认情况下将其值存储在内存中),它就可用于每个页面。但是这些Session超时了;在一段时间不活动之后——比如 15 分钟——服务器会清除内存。

你的意思只是一个会话:用户登录,做事,然后注销。

为了在他注销时自动返回到他所在的最后一页,您需要做的就是让“注销”按钮的代码将Request.Uri.AbsoluteUri字符串存储在数据库中。因此,只需Click在您的代码隐藏中使用该按钮的事件处理程序将该值与用户 ID 一起存储。

然后,登录按钮事件背后的代码Click可以简单地检索该值并将其检索Response.Redirect到该 Uri。

于 2013-09-03T11:41:37.163 回答
3

你可以使用:

Request.Url.AbsoluteUri

并将其存储在会话中。

Session["LastVisitedPage_" + userId] = Request.Url.AbsoluteUri;
于 2013-09-03T11:27:17.310 回答
2

您可以使用 Request.Url 获取当前页面的 url。当用户单击注销按钮时,将当前 url 存储在数据库中。下次用户登录时,从数据库中检索 url 并重定向到它。

于 2013-09-03T11:28:47.197 回答
2

注销:

 Session.abandon();

存储会话:

 Session["name"] = Request.Url.AbsoluteUri;
于 2013-09-03T11:29:38.203 回答