最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

關(guān)于頁面刷新,事件重復(fù)提交的方法分享

 更新時間:2012年10月11日 23:58:17   作者:  
在處理頁面事件時,我們會經(jīng)常會碰到這樣的情況:當我們在提交一項頁面表單時,在提交成功后,當我們試圖按F5刷新頁面時,數(shù)據(jù)會再次的被重復(fù)提交
瀏覽器的刷新是指重復(fù)上一次向服務(wù)器發(fā)送的請求,而asp.net的服務(wù)器控件的事件都是通過postback機制向服務(wù)器發(fā)送請求的。所以,當你點擊提交按鈕后再刷新,實際上是把提交按鈕的postback請求又發(fā)送了一次。而asp.net應(yīng)用服務(wù)器是無法區(qū)別這是正常點擊按鈕添加還是f5刷新添加(這涉及到頁面生命周期。。。),那么這樣就會導(dǎo)致在數(shù)據(jù)庫里會存在n 條一模一樣的數(shù)據(jù)。
在解決這個問題的過程中,嘗試了一下幾種方法:

(1)在事件提交后,將其中的參數(shù)置空,使得程序在執(zhí)行過程中,因為沒有參數(shù)而不會做業(yè)務(wù)處理。這種處理方法沒有效果,因為服務(wù)器執(zhí)行的是上一次請求的事件,事件提交后,改變參數(shù)沒有任何意義。

(2)在事件提交后,將頁面進行重定向到當前頁面(Response.Redirect( "/basedata/PictureAdd.aspx" , true);)。因為每個頁面都具有自己的生命周期,進行重定向后,即結(jié)束了當前頁面操作。這種方法可行!

為什么在原Asp開發(fā)程序中不會碰到這樣的問題呢?我覺得是因為Asp程序主要都是將表單提交給另外一個頁面處理,并且,這個頁面處理之后,將跳轉(zhuǎn)到另外一個提示頁面。那么在Asp程序中,只需要在回退時將頁面設(shè)置為過期那么就可以有效的避免重復(fù)提交的問題。但是在Asp.Net中,基本上所有的操作都是基于事件操作,而事件的本質(zhì)上就是頁面自己提交給自己,并且頁面無法識別提交時正常操作還是重復(fù)刷新。

相關(guān)文章

  • 將Git存儲庫克隆到本地IntelliJ IDEA項目中的詳細教程

    將Git存儲庫克隆到本地IntelliJ IDEA項目中的詳細教程

    這篇文章主要介紹了將Git存儲庫克隆到本地IntelliJ IDEA項目中的詳細教程,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-10-10
  • 使用VScode寫一個html頁面

    使用VScode寫一個html頁面

    本文給大家分享的是使用vscode編寫的第一個html頁面的全過程,非常的簡單,菜鳥看看就行,高手請略過
    2020-01-01
  • 15個開發(fā)者必須知道的chrome技巧

    15個開發(fā)者必須知道的chrome技巧

    這篇文章主要介紹了15個開發(fā)者必須知道的chrome技巧,需要的朋友可以參考下
    2017-09-09
  • 網(wǎng)站分站的實現(xiàn)方法

    網(wǎng)站分站的實現(xiàn)方法

    現(xiàn)在一般的行業(yè)門戶網(wǎng)站為了業(yè)務(wù)的發(fā)展和網(wǎng)絡(luò)推廣,一般都會開通幾個地區(qū)和子行業(yè)的分站。下面是一些解決思路,需要的朋友可以參考下。
    2010-06-06
  • 簡單談?wù)凣it中的回滾操作

    簡單談?wù)凣it中的回滾操作

    大家在日常開發(fā)中,經(jīng)常會遇到需要將代碼切回到之前的某個版本的情況,有可能是需要將代碼回滾,也有可能需要查看之前的某個實現(xiàn)。遇到這樣的情況,該怎么做呢?下面通過這篇文章來學(xué)習(xí)下Git中的回滾操作,有需要的可以參考借鑒。
    2016-09-09
  • IDEA配置leetcode插件的步驟

    IDEA配置leetcode插件的步驟

    這篇文章主要介紹了IDEA配置leetcode插件的步驟,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • git中ssh key配置詳解

    git中ssh key配置詳解

    這篇文章主要介紹了git中ssh key配置詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • Sublime?Text?4怎么安裝使用

    Sublime?Text?4怎么安裝使用

    這篇文章主要介紹了Sublime?Text?4怎么安裝使用,下載對應(yīng)的安裝包,將該exe文件復(fù)制到對應(yīng)的sublime?text的安裝目錄下(與sublime_text.exe同級),右鍵管理員運行即可,需要的朋友跟隨小編一起看看吧
    2022-01-01
  • Kali滲透測試之使用Metasploit對Web應(yīng)用的攻擊

    Kali滲透測試之使用Metasploit對Web應(yīng)用的攻擊

    這篇文章主要介紹了Kali滲透測試:使用Metasploit對Web應(yīng)用的攻擊,這種漏洞源于Web應(yīng)用程序沒有對用戶輸入的內(nèi)容進行準確的驗證,從而導(dǎo)致操作系統(tǒng)執(zhí)行了攻擊者輸入的命令,需要的朋友可以參考下
    2022-05-05
  • git push 本地項目推送到遠程分支的方法(git命令版)

    git push 本地項目推送到遠程分支的方法(git命令版)

    這篇文章主要介紹了git push 本地項目推送到遠程分支的方法(git命令版),需要的朋友可以參考下
    2020-09-09

最新評論

铜川市| 临洮县| 丹阳市| 萨迦县| 宿迁市| 壶关县| 南靖县| 五河县| 徐汇区| 肃宁县| 巩留县| 游戏| 宜川县| 营口市| 抚松县| 普洱| 三台县| 开封县| 舟山市| 虹口区| 峨山| 涟源市| 兴城市| 迁安市| 宁南县| 望奎县| 石台县| 石门县| 淄博市| 太湖县| 连南| 天等县| 滕州市| 略阳县| 章丘市| 昭觉县| 永和县| 平邑县| 西吉县| 将乐县| 黎平县|