如何刷新具有特定查询字符串值的currentpage(c#)

时间:2011-02-20 11:25:20

标签: c# asp.net

删除特定产品时,我遇到一个简单的错误通知问题。

我有一个页面products.aspx 我有2个类别        - 手机(猫1)        - 净(猫2)

当我删除特定类别的特定产品时,我会收到“您的产品已被删除...”的通知,然后在2秒后,我希望当前页面刷新,因此新的正确数量为产品展示。我的问题是,我正在请求查询字符串“deleteid”,同时删除产品,然后我的带有“categoryid”的查询字符串当然是0。 总而言之,我需要刷新“products.aspx?categoryid = 2”,但在请求“deleteid”时,categoryid为ofc 0。

到目前为止我得到了这个,希望你明白并且可以帮助我......谢谢!

... listing products by category (Request.QueryString["categoryid"])
... Then deleting by id, (Request.QueryString["deleteid"])    
... and now my problem and what I have so far:

var query = Request.QueryString["deleteid"];
    if (query.HasValue())
    {
        // deleting product
        DeleteSpecificProduct(query.Int16());

        errornotification.Text += @"Your product has been deleted";

        // refreshing current page
        var categoryid = Request.QueryString["categoryid"].Int16();
        var url = String.Format("products.aspx?categoryid={0}", categoryid);
        Response.AppendHeader("REFRESH", "2;URL=" + url);
     }

//由于

2 个答案:

答案 0 :(得分:0)

删除链接包含categoryid。例如:

<a href="products.aspx?deleteid=1&categoryid=1234">Delete Product 1</a>

如果您不想这样做,您可以解析引荐来源网址的查询字符串,假设从类别页面点击了删除链接。

另外,我认为您希望元标记刷新,而不是http标头。在页面的<head>部分内,添加

<meta http-equiv="Refresh" content="2; URL=..." />

答案 1 :(得分:0)

为什么不简单Response.Redirect(String.Format("products.aspx?categoryid={0}", categoryid))您的网页通知错误?