2011-05-14 31 views
0

我在尋找關於在會話之間爲多頁用戶表單保存數據的最佳方式的建議。我正在使用c#3.5和SQL Server 2008在sesisons之間保存用戶表單數據

表單目前處於必須完成整個表單的狀態,我想對其進行更改,以便表單和數據可以從某個點保存並恢復尋找建議,最佳實踐等。

+1

什麼語言/平臺? – Oded 2011-05-14 13:25:38

+0

對不起,我正在使用c#3.5和SQL 2008 – 2011-05-14 13:57:28

+0

WebForms?的WinForms? MVC? WPF? – Oded 2011-05-14 14:00:40

回答

0

假設這是一個web應用程序,您將需要將這些字段存儲在數據庫中。在表單的每個頁面上,包含一個「保存」按鈕,它將採用當前可見的字段並將它們存儲在數據庫中。還有一個「下一頁」按鈕。在最後一頁上,包含一個「提交」按鈕。單擊時,將檢索表單數據庫中的所有字段,並提交它以在數據庫中的新表格中創建新條目(例如,CompletedFormTable)

您還必須再做一件事。您必須在每個頁面上包含表單的ID,以便您可以識別數據庫中的表單數據。有幾種方法可以做到這一點。

  1. 將會話cookie添加到用戶的瀏覽器。在表格表中包含一個「會話cookie」字段以標識表單數據應該到達的位置。
  2. 在引用數據庫中條目的「id」的表單中包含一個隱藏字段。
  3. 將所有內容存儲在瀏覽器(json對象)中並使用ajax,以便不必重新加載頁面。不用在表格中輸入所有內容,只需更新json對象即可。提交時,您將json對象發送到服務器,然後該服務器將在數據庫中創建一個條目用於存儲。
+0

此外,您可能需要添加代碼以清除過期表單數據,以防用戶永遠不會返回。 – 2011-05-14 13:54:50

+0

您可以使用「下一步」按鈕對數據庫執行保存。 – Marthin 2011-05-14 14:12:37

+0

感謝這看起來像一個好的開始,雖然我需要更熟悉JSON,在你看來,如果這是一個單一的頁面形式將保存和檢索視圖狀態到數據庫完成我想要做的? – 2011-05-14 22:59:41