我有一个用户控件,当执行某个操作时,我想要跳转回用户所在的页面,并添加一些额外的查询字符串参数。
比如说,如果 UserControl.ascx 控件在 Home.aspx 页面上,我想要重定向到 Home.aspx?action=true;如果该控件在 Profile.aspx 页面上,我想要重定向到 Profile.aspx?action=true。
因此,基本上,在我的 UserControl.ascx.cs 文件中,我想要获取父页面的 URL。我该如何获取呢?
我有一个用户控件,当执行某个操作时,我想要跳转回用户所在的页面,并添加一些额外的查询字符串参数。
比如说,如果 UserControl.ascx 控件在 Home.aspx 页面上,我想要重定向到 Home.aspx?action=true;如果该控件在 Profile.aspx 页面上,我想要重定向到 Profile.aspx?action=true。
因此,基本上,在我的 UserControl.ascx.cs 文件中,我想要获取父页面的 URL。我该如何获取呢?
您可以查看Request.Url
、Request.RawUrl
、Request.FilePath
以及Request
对象的其他类似属性,具体取决于您如何使用它们。
这将为您提供来自浏览器的请求URL,从而告诉您您的控件所在的页面是哪个。
string currentUrl = Request.Url.AbsoluteUri.ToString();
Request.UrlReferrer 可以获取到前一页的 URL...通常情况下。但是有一些情况下它可能为空:
只要你的代码在 UrlReferrer 为空或无效时“友好地运行”,那么你就可以放心使用。
Request.Url.Scheme + "://" + Request.Url.Host + Request.RawUrl