我正在寻找一种内置解决方案来获取用户通过我的 ASP.NET 应用程序访问的页面。
这是一个简单的例子:
Default.aspx
Page1.aspx
Page2.aspx
Page1.aspx <-- User is here
我想在当前页面之前获取最新页面,在本示例中为Page2.aspx
.
也许Master Page
或ViewState
可以帮助?
没有“内置解决方案”。
如果您必须这样做 - 如果历史记录很小,您可以将其存储在会话中。如果更大,请坚持到数据库。
您还可以考虑与谷歌分析集成。
您可以使用Request.UrlReferrer找出将用户带到当前页面的页面(或站点)。
或Page.PreviousPage告诉您相同的信息,但有一些警告:
当您使用 Transfer 方法或使用跨页面发布将处理从一个 ASP.NET 页面转移到另一个页面时,原始页面包含目标页面可能需要的请求信息。您可以使用 PreviousPage 属性来访问该信息。如果当前页面是由于直接请求(不是来自另一个页面的传输或交叉发布)而呈现的,则 PreviousPage 属性包含 null。
但是,您只能获得上一页。如果您想要完整的历史记录,则必须在您的应用程序中启用/实现某种跟踪。