2013-04-04 53 views
0

上我在aspx页面ListView控件和ListView控件内的这种控制:要避免再次运行该代码,单击刷新

<asp:LinkButton ID="addToCart" runat="server" CommandArgument='<%# Eval("ProductID") %>' OnCommand="addToCart_Click">Add Cart</asp:LinkButton> 

,并使用此代码母版页:

<%@ Page EnableViewState="true" ViewStateMode="Disabled" ... 

也,ListView ViewStateMode被启用。和此代码:

protected void addToCart_Click(object sender, CommandEventArgs e) 
    { 
     //insert product into cart table 
    } 

首先,我将点击addToCart并执行代码。 (这个确定)但是,代码重新运行(插入产品到购物车表),然后当我点击刷新页面!

+0

你的代码中插入一条记录,当你刷新页面吧...? – Pandian 2013-04-04 10:44:53

+0

我的代码已经插入到sql的值,但是,代码重新运行(插入产品到购物车表),然后当我点击刷新页面。 – 2013-04-04 10:50:04

+0

请参阅此链接:http://stackoverflow.com/questions/1984090/new-row-inserted-for-each-page-refresh。我认为你的问题在这里讨论。 – Pandian 2013-04-04 10:54:09

回答

0

您可以从addToCart_Click回调重定向回页面。

Response.Redirect("PageUrl.aspx"); 

你可以参考这个模式:http://en.wikipedia.org/wiki/Post/Redirect/Get

+0

我不想重定向页面。 – 2013-04-04 10:54:59

+0

据我所知,这是唯一的解决方案。你有没有看到维基中的模式?你遇到的是一个非常普遍的问题。 – AlexanderBrevig 2013-04-04 11:06:11

+0

thx。但是当我在第二个列表视图页面上。我想要显示页面。我不想重定向页面。请帮我重定向。 – 2013-04-04 11:07:50