MVC3多步形式 - 如何持久化模型对象

mah*_*chR 9 object-persistence viewmodel razor asp.net-mvc-3

我有一个多步骤表单,它使用一个模型对象,我需要在步骤之间保持它.只有在最后一步之后,对象才会保存到数据库中.我见过人们建议使用HTML.Serialize但这个选项有多安全?

此外,我的模型对象将随着用户填写表单而增长,这意味着带有序列化数据的隐藏表单字段将增加我的HTML输出的大小.

对于这种情况,最好的做法是什么?

GvS*_*GvS 8

我已经将TempData用于此目的.

您可以在TempData中存储对象(模型数据的副本),并在下一个请求中使用它.如果它没有在下一个请求中被设置,它将被"销毁".所以你不必担心会填满你的会话.