【问题标题】:How do I identify the referrer page in ASP.NET?如何在 ASP.NET 中识别引荐来源网页?
【发布时间】:2010-04-12 18:09:07
【问题描述】:

在 VS2003 中,我试图找出请求来自的特定页面。我想确定确切的 aspx 页面名称。

有没有办法只获取页面名称或如何去除页面名称?

目前我正在使用以下指令...

string referencepage = HttpContext.Current.Request.UrlReferrer.ToString();

我得到以下结果...

"http://localhost/MyPage123.aspx?myval1=3333&myval2=4444;

我想在没有任何查询字符串参数的情况下返回结果,并能够准确识别页面 MyPage123.aspx...

我该怎么做??

【问题讨论】:

  • 谁是随机否决好的答案?另外,@dotnet-practicioner:在提出更多问题之前,您需要回到旧问题并开始将好的答案标记为已接受的答案。

标签: asp.net referrer


【解决方案1】:

不要在 Uri 上调用 .ToString,而是使用 AbsolutePath 属性:

string referencepage = HttpContext.Current.Request.UrlReferrer.AbsolutePath;

在您的情况下,这应该会为您提供“/MyPage123.aspx”。

编辑:错误地使用 LocalPath 而不是 AbsolutePath

【讨论】:

    【解决方案2】:

    查看 URI 类的 Segments property(这是 HttpContext.Current.Request.UrlReferrer 返回的内容)。

    类似于HttpContext.Current.Request.UrlReferrer.Segments[1](更改 1 索引器以获得所需的正确段)。

    【讨论】:

    • 如果您只需要文件名而不需要任何目录,这就是要走的路。使用目录时要小心,并且可能在多个目录中有同名文件。
    猜你喜欢
    • 2010-12-30
    • 2011-05-14
    • 1970-01-01
    • 2010-12-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-09
    相关资源
    最近更新 更多