我希望關於我打算使用用於防止在ASP.NET MVC 4應用程序重複記錄的方法的一些反饋,並影響敲我沒有的,雖然爲用戶體驗。防止雙提交/後ASP.NET MVC頁
的web表單具有六個輸入字段和保存按鈕(以及取消按鈕),用戶可以利用長達10分鐘的形式填充。
一旦字段通過後的頁面上成功/失敗重定向到不同的頁面,該數據是使用一個新的GUID作爲主鍵記錄在數據庫表後提交。
要停止用戶多次按下保存按鈕,但允許瀏覽器在關閉的連接上重新發布請求,我打算在呈現表單時爲新記錄主鍵提供Guid作爲隱藏輸入字段。
如果重新發布情況,或用戶按保存多次,數據庫服務器會拒絕,因爲重複的鍵,我可以檢查與服務器端處理的記錄的第二個職位。
但這是否會給我造成更大的問題?
問題是什麼? –
將主鍵ID放入隱藏字段時唯一的問題是用戶可以進入該字段並更改主鍵並更新數據庫中的每條記錄。現在,因爲它們是Guid的,所以幾乎不可能猜到已經使用過的Guid,並且會比之前的用戶表單更新,如果你使用的是整數,那麼我會這麼說是個壞主意 –
你有沒有使用過Bootstrap?因爲它會自動disabvles按鈕一旦點擊,如果不使用jquery或一些加載器或隱藏按鈕,一旦點擊,直到你收到迴應的發佈請求' – Tushar