好的,我的页面上有一个超链接,超链接保存在用户控件中。当用户单击该链接时,它用于删除页面上的项目,因此:
<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);
}
但是我需要刷新页面,因为它正在删除它,但是我的转发器没有显示删除了该项目的列表。什么是最好的方法来解决这个问题?只是对转发器进行重新绑定还是有更清洁的方法?也许那只是标准的方式?在我用这种方法删除后重新绑定?
答案 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);