【问题标题】:asp.net After a Server.Transfer how do you get the path of the current page?asp.net 一个Server.Transfer之后怎么获取当前页面的路径?
【发布时间】:2010-01-10 14:09:41
【问题描述】:

为了获取当前页面的url,我通常会这样做:

string path = Request.Path;

如果我在 Server.Transfer 之后执行此操作,那么我将获得完成传输的页面路径。如何获取当前页面?

例如:

在 Page1.aspx 我做 Server.Transfer ("Page2.aspx")
在 Page2.aspx Request.Path 上返回 /Page1.aspx 而不是 /Page2.aspx

我想获取 /Page2.aspx。我怎样才能得到它?

【问题讨论】:

  • 你的意思是Server.Transfer
  • 确切。我已经编辑了问题。

标签: asp.net


【解决方案1】:

您正在寻找Request.CurrentExecutionFilePath 属性。

【讨论】:

  • 您也可以使用 Request.QueryString 来获取当前页面的查询字符串,因此完整的 URL 将是 Request.CurrentExecutionFilePath + "?" + Request.QueryString.ToString()
【解决方案2】:

【讨论】:

    【解决方案3】:

    当您使用 Server.Transfer 时,尽管浏览器上的 URL 没有改变,但请求引用 URL 会。因此,您可以使用 UrlReferrer 属性的请求。 UrlReferrer 获取有关链接到当前 URL 的客户端先前请求的 URL 的信息。

    例如

    string myContextBrowserPath = Context.Request.UrlReferrer.AbsolutePath
    

    【讨论】:

      猜你喜欢
      • 2021-07-23
      • 1970-01-01
      • 2014-05-26
      • 2015-02-08
      • 2015-02-06
      • 2016-05-03
      • 2020-07-27
      • 2016-12-31
      • 1970-01-01
      相关资源
      最近更新 更多