如何在页面加载事件中从一个页面重定向到另一个页面后销毁查询字符串?

How to destroy query string after redirecting from one page to another page on page load event?

我有 2 个页面名称为:

现在在 Abc.aspx 的页面加载中,我正在这样做:

protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                if (!string.IsNullOrEmpty(Request.QueryString["Alert"]))
                {
                    if (Request.QueryString["Alert"] == "y")
                    {
                      //Here on redirection from Pqr.aspx i will display Javascript alert that your "Your data save"
                    }
                }
                else
                {
                        //Dont do anything
                 }
            }

        }

现在我从 pqr.aspx 页面重定向到 Abc.aspx 并在单击按钮时传递查询字符串:

     protected void Save_Click(object sender, EventArgs e)
     {
        //saving my data to database.
        Response.Redirect("~/Abc.aspx?Alert=yes");
     }

但是如果有人在浏览器中像这样输入 url,那么仍然会出现此警报:

http://localhost:19078/Abc.aspx?Alert=yes

然后还是这个javascript警告框。

我想要的是从我的 Pqr.aspx 页面重定向后,只有这个警报应该出现

如何做到这一点??

Asp.net中有一个名为Request.UrlReferrer的对象。用这个属性你可以得到你来的上一页当前页面

protected void Page_Load(object sender, EventArgs e)
{
      if (!IsPostBack)
      {
           if (!string.IsNullOrEmpty(Request.QueryString["Alert"]))
           {
               if (Request.QueryString["Alert"] == "y" && Request.UrlReferrer != null && Request.UrlReferrer.LocalPath == "/pqr.aspx") // if the root is same
               {
                   //Here on redirection from Pqr.aspx i will display Javascript alert that your "Your data save"
               }
               else
               {
                        //Dont do anything
               }
           }
       }
}