成人午夜激情影院,小视频免费在线观看,国产精品夜夜嗨,欧美日韩精品一区二区在线播放

ASP.NET頁面刷新數據重復提交解決方案

2010-09-10 14:15:08來源:作者:

  頁面刷新導致數據重復提交這個問題困擾我也很久了,在網上搜了一個大家把解決的辦法多聚焦在了如何判定是刷新還是正常提交上了。這個方法通過Session放一些識別數據也可以解決問題。

  頁面刷新導致數據重復提交這個問題困擾我也很久了,在網上搜了一個大家把解決的辦法多聚焦在了如何判定是刷新還是正常提交上了。這個方法通過Session放一些識別數據也可以解決問題。

  這里我只是想提供另外一個思路,不是完美解決重復提交,僅供博友們參考。

  “GET”與“POST”想必大家已經了解很多了,也只有在post時,才會擔心刷新致使重復提交。自從asp.net出世,受winform的影響,大家肯定大量的爛用postback。我覺得,大部分展現數據時還是用get,大不了多加幾個querystring,只有在執行數據操作時才用 post, 一量數據提交完畢之后,立即切換成get方式,這樣用戶都沒有機會使用刷新重復提交數據。當然,這只是我的嘗試,歡迎大家提出反對意見。

  每次執行完一次事件,立即調用Reload,用GET方法重新查看已經提交數據。當然,如果這個提交的過程很久,其間用戶點了刷新,這段代碼就無能為力了。

C# Code復制內容到剪貼板
  1. protected void Button1_Click(object sender, EventArgs e)   
  2.     {   
  3.         count++;   
  4.         this.Button1.Text = count.ToString();   
  5.         Reload("run success!");   
  6.     }   
  7.   
  8.     private void Reload(string message)   
  9.     {   
  10.         string script = "<script>alert(\"{0}\");window.location.href=\"{0}\";</script>";   
  11.         string outstring;   
  12.   
  13.         if (string.IsNullOrEmpty(message))   
  14.         {   
  15.             Response.Redirect(this.Request.Url.OriginalString);   
  16.         }   
  17.         else  
  18.         {   
  19.             outstring = string.Format(script, message, this.Request.Url.OriginalString);   
  20.         Response.Write(outstring);   
  21.         Response.End();   
  22.         }   
  23.   
  24.     }  
關鍵詞:ASP.NET

贊助商鏈接:

主站蜘蛛池模板: 漳平市| 南澳县| 墨玉县| 磐安县| 龙川县| 宣武区| 浠水县| 共和县| 嘉黎县| 江油市| 陆丰市| 吉木萨尔县| 宜春市| 平和县| 太和县| 巴塘县| 岗巴县| 清河县| 宁明县| 广昌县| 清原| 合肥市| 海丰县| 神农架林区| 阜城县| 扎兰屯市| 柳江县| 平远县| 平度市| 桦南县| 隆林| 大城县| 兴安县| 铁力市| 临夏县| 兴国县| 横峰县| 榆中县| 黔东| 宿松县| 浙江省|