【问题标题】:Refresh the page after a postback action in asp.net在 asp.net 中执行回发操作后刷新页面
【发布时间】:2010-10-07 21:11:06
【问题描述】:

我在我的 asp.net 网格中添加了命令按钮。使用该按钮执行操作后,我们刷新网格以反映新数据。 (基本上这个动作复制了网格行)。

现在当用户使用 F5 刷新页面时,如果我们选择“重试”,则会显示一条警告消息(将信息重新发送到服务器),该操作会自动重复。

我知道这是 asp.net 中的一个常见问题,我们怎样才能最好地处理这个问题?

【问题讨论】:

    标签: asp.net postback refresh


    【解决方案1】:

    在 POST 之后搜索 GET - http://en.wikipedia.org/wiki/Post/Redirect/Get - 基本上,在您完成事件处理后重定向到当前页面。

    类似:

    Response.Redirect(Request.RawUrl)

    【讨论】:

      【解决方案2】:

      如果您认为不需要回发范式,则可能需要查看 ASP.NET MVC。

      【讨论】:

        【解决方案3】:

        问题在于,当您按下按钮时,asp.net 按钮会执行表单发布。如果您用链接替换按钮,您的问题应该会消失。您还可以使用执行 javascript 功能的按钮,将 document.location 设置为您的页面地址。

        【讨论】:

          【解决方案4】:

          如果我很好理解,您只需在填充网格之前检查您是否处于回发状态。
          假设您在 Page_Load 上执行此操作,只需将操作用回发测试包围,如下所示:

          private void Page_Load(object sender, EventArgs e)
          {
              if(!this.IsPostBack)
              {
                  // populate grid
              }
          }
          

          【讨论】:

            【解决方案5】:

            你需要调用 response.Redirect(Request.Url.ToString());

            或者您可以使用 updatepanel 包装网格,并在每个命令之后将数据源绑定到网格

            【讨论】:

              【解决方案6】:

              在你的 <asp:Repeater> 标签里面放这个:

              EnableViewState="false"
              

              这将导致您的控件在每次页面加载时刷新,无论是否是回发。

              【讨论】:

                【解决方案7】:

                例如: 如果您单击“按钮”,系统将捕获事件“按钮点击”。 如果刷新页面,系统将再次执行相同的事件。 没有这个问题,在你的事件插入: 在您的活动中

                private void button_click(object sender, System.EventArgs e)
                {
                    button.Enabled =false;
                    button.Enabled =true;
                }
                

                你的意思是?

                【讨论】:

                • 这根本不是问题所在。
                猜你喜欢
                • 1970-01-01
                • 1970-01-01
                • 2020-12-27
                • 1970-01-01
                • 2011-09-10
                • 1970-01-01
                • 2011-04-23
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多