2011-06-14 52 views
0

我有一個簡單JsonResult,現在,雖然我的工作出來,需要一個值,並返回一個結構(作爲JsonResult)。這部分工作,因爲我已經將請求掛鉤到jQuery的按鈕點擊,並且可以讀取值。MVC JsonResult - 保值/對象代碼

我的問題是,是否有可能在結構添加到頁面的背景下,讓表單提交時所產生的結構是可用的?

我想避免的會召開的價值,並希望做「正確」

我需要使用比使用JsonResult一種不同的方法/方法?

我希望這有道理嗎?

+2

爲什麼你避免將它存儲在會話中? – archil 2011-06-14 11:22:20

+0

我希望有一個更好的辦法,但我將使用會話現在 – mp3duck 2011-06-14 13:09:41

回答

1

以我的經驗,向客戶端發送任何東西都可以,然後再將其發送回你是否喜歡還是不喜歡改變。當然,有些事情比其他事情更容易操縱,但仍然有可能。

雖這麼說,真的一切都取決於你與客戶端的變化是如何關注,如何敏感,這個結構的信息是您是否不存儲它的客戶端或服務器端。

無論如何,這是相當簡單的,以價值客戶端存儲在一個JavaScript變量,或在一個隱藏字段作爲字符串和表單POST或AJAX調用後返回時回來。

0

您可以將JSON字符串存儲在你的窗體上的隱藏輸入,並具有提交回控制器與形式。然後在控制器中,您可以將JSON反序列化到結構中。

+0

我想避免這種情況,因爲他們的用戶可以與螢火蟲編輯它,如果你想防止用戶提交回來.. – mp3duck 2011-06-14 11:18:05

+1

@ mp3duck可能會篡改數據,那麼你不能依靠用戶的機器來提交數據。您必須將數據存儲在服務器上的會話狀態中。 – Clayton 2011-06-14 11:23:38