如何检查页面是否从上一页重定向或不在asp.net中

Mur*_*hy 5 c# asp.net

在第1页的按钮单击中,我使用msgid将页面重定向到第2页,在页面加载的第2页中,我检查上一页是否有效.所以我检查(this.Page.PreviousPage != null)但是这总是为空,页面被重定向到第1页.我这样做是为了没有人可以更改网址中的msgid.我该如何解决这个问题.谢谢

第1页:

  int msgid = Convert.ToInt32(Hidden_MsgID.Value);
    string url = "Page2.aspx?MsgID=" + msgid;
    Response.Redirect(url);      
Run Code Online (Sandbox Code Playgroud)

第2页:

if (this.Page.PreviousPage != null)
                {
                }
                else
                {
                    Response.Redirect("Page1.aspx");
                }
Run Code Online (Sandbox Code Playgroud)

而不是response.redirect我用过服务器.传输它的工作原理Server.Transfer(string.Format("ResponseMetric.aspx?MsgID = {0}",msgid));

And*_*air 11

PreviousPage仅适用于Server.Transfer和/或跨页面发布:http://msdn.microsoft.com/en-us/library/system.web.ui.page.previouspage.aspx

您可以在此处获得解决方案的元素:使用this.Request.UrlReferrer