2011-12-08 47 views
1

我需要將模型的所有值傳遞給下一個控制器。我可以爲模型的所有屬性創建隱藏字段,但是當模型獲取新字段時,這總是有點容易出錯。爲Asp.net MVC 3模型的所有屬性添加隱藏字段的最簡單方法?

我嘗試這樣做:

@Html.HiddenFor(x => x) 

但這只是導致錯誤

CS1660: Cannot convert lambda expression to type 'string' because it is not a delegate type 

(我不喜歡使用TempData的,因爲它如此短暫,和未刨光頁面重載) 是有一個簡單的方法來完成這個?

+0

檢查[這個答案](http://stackoverflow.com/a/3633505/60108) – Eranga

+0

可以工作,但也有點笨拙.. – AyKarsi

回答

0

您必須添加您正在使用的屬性在lambda表達研究

@Html.HiddenFor(x => x.Username) 
+1

只是從模型中添加一個屬性。我想一次性添加整個模型。 – AyKarsi

1

爲什麼不把它從數據庫?如果用戶無法更改這些值,那麼您爲什麼需要來回發送它?惡意用戶可以修改隱藏字段值並嘗試將其發回服務器。從數據庫中拉出會更快,更安全。