2013-04-12 35 views
2

我正在寻找一个内置解决方案来获取用户通过我的ASP.NET应用程序访问的页面。ASP.NET是否具有获取用户历史记录的内置功能?

下面是一个简单的例子:

Default.aspx 
Page1.aspx 
Page2.aspx 
Page1.aspx <-- User is here 

我想当前在这个例子中是Page2.aspx之前得到最新的页面。
也许Master PageViewState可以提供帮助吗?

+0

你为什么要这样做?这听起来像一个不好的习惯出生。 –

+0

取决于你想要做什么,你也可以实现它在客户端。 – zimdanen

回答

0

您可以使用Request.UrlReferrer找出将用户带到当前页面的页面(或站点)。

或者Page.PreviousPage告诉你同样的信息,但有一些注意事项:

当您使用的传输方式或使用跨页投递从一个ASP.NET页传输 处理到另一个,始发页面 包含 目标页面可能需要的请求信息。您可以使用PreviousPage属性来访问该 信息。如果当前页面由于 直接请求(不是来自另一页面的传输或交叉帖子)而呈现,则PreviousPage属性包含空值。

但是,您只能看到上一页。如果您想要完整的历史记录,您必须在您的应用中启用/实施某种跟踪。

1

没有“内置解决方案”。

如果您必须这样做 - 如果历史记录很小,您可以将它存储在一个会话中。 如果更大,坚持一个分贝。

你也可以考虑与谷歌分析集成。

+1

这也是,我建议你编写你的web应用程序尽可能无状态。 – Matthew