在C#中离开当前页面时是否可以获取下一页的URL?
在我当前页面上,我想在下一页加载之前捕获下一页的网址。我不知道从哪里开始...或者在我的页面上我将放置这个逻辑(例如page_load,buttonClick等)。
答案 0 :(得分:2)
我认为不可能“捕获下一页的网址”,但您可以尽快获得当前请求。因此请使用Global.asax
:
public class Global : System.Web.HttpApplication
{
protected void Application_BeginRequest(object sender, EventArgs e)
{
HttpContext context = base.Context;
HttpResponse response = context.Response;
HttpRequest request = context.Request;
var url = request.RawUrl;
// and many other properties ...
}
}
答案 1 :(得分:0)
假设您正在通过查询字符串进行分页,而当前页面是:
url.com/default.aspx?page=1
然后获取下一页网址只会增加页面查询字符串,所以:
if (!String.IsNullOrempty(Request.QueryString["page"]) {
int nextPageNumber = int.Parse(Request.QueryString["page"] + 1;
string nextPageUrl = String.Format("url.com/default.aspx?page={0}, nextPageNumber);
}
理想情况下,您将使用UriBuilder重新构建域,而不是像String.Format方法那样对其进行硬编码。我这样做只是为了简洁。
答案 2 :(得分:0)
CodeProject有一个saving change on close or exiting page项目,可能对您有所帮助。