刷新页面的最佳方式

时间:2009-12-02 15:30:30

标签: asp.net

好的,我的页面上有一个超链接,超链接保存在用户控件中。当用户单击该链接时,它用于删除页面上的项目,因此:

<a href='<%#string.Format("{0}?removeItem=true&ItemID={1}", CurrentPage, Container.DataItem.Id )%>'>Remove this item</a>

点击链接后,我的用户控件的代码隐藏检查removeItem bool,如果设置为true,则删除该项:

        removeSavedItem = Convert.ToBoolean(Request["removeItem"]);

        if(removeItem)
            RemoveItem();

这是我的RemoveItem()方法:

    protected void RemovItem()
    {
        int itemID = Util.ParamVal("savedItemID", 0);

        if (itemID > 0)
            service.RemoveItem(itemID);
    }

但是我需要刷新页面,因为它正在删除它,但是我的转发器没有显示删除了该项目的列表。什么是最好的方法来解决这个问题?只是对转发器进行重新绑定还是有更清洁的方法?也许那只是标准的方式?在我用这种方法删除后重新绑定?

4 个答案:

答案 0 :(得分:1)

我建议尝试删除项目,除非您在页面中更改了很多内容。

作为对您问题的回答,您可以执行Response.Redirect(Request.Url.ToString()); 如果您想以任何理由从JavaScript执行此操作,请使用window.location.reload();

由于

答案 1 :(得分:0)

我更喜欢重定向回同一页面。

Response.Redirect(Request.Path);

答案 2 :(得分:0)

为什么不在会话中保存已删除的项目,以便刷新无法获取它们?

答案 3 :(得分:0)

这是pah和查询

Response.Redirect(Request.Url.PathAndQuery);