Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/asp.net-mvc-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 3 MVC 3-当ModelState无效时,使用正在运行的集合重新填充ViewModel属性_Asp.net Mvc 3_Viewmodel_Updatemodel_Modelstate - Fatal编程技术网

Asp.net mvc 3 MVC 3-当ModelState无效时,使用正在运行的集合重新填充ViewModel属性

Asp.net mvc 3 MVC 3-当ModelState无效时,使用正在运行的集合重新填充ViewModel属性,asp.net-mvc-3,viewmodel,updatemodel,modelstate,Asp.net Mvc 3,Viewmodel,Updatemodel,Modelstate,我有一个ViewModel,它有几个属性,包含用于填充表单中下拉列表的集合。在get操作中,将填充这些属性,然后正确渲染视图 当用户使用sumbits表单时,则在Post操作中,我的ViewModel包含表单中填写的所有数据,但所有集合属性都为null,因为浏览器不发送它们。没关系,当ModelState有效时,我就不再需要它们了。但是,当ModelState无效时,我需要再次显示表单以更正错误 MVC是否将这些集合临时存储在任何位置,并且ViewModel属性可以轻松地用与get action

我有一个ViewModel,它有几个属性,包含用于填充表单中下拉列表的集合。在get操作中,将填充这些属性,然后正确渲染视图

当用户使用sumbits表单时,则在Post操作中,我的ViewModel包含表单中填写的所有数据,但所有集合属性都为null,因为浏览器不发送它们。没关系,当ModelState有效时,我就不再需要它们了。但是,当ModelState无效时,我需要再次显示表单以更正错误

MVC是否将这些集合临时存储在任何位置,并且ViewModel属性可以轻松地用与get action中相同的值填充,或者我必须手动填充它们(从缓存或新查询到数据库)

我想,MVC存储原始值,所以它们可以在后期操作的验证过程中使用,但我无法理解


谢谢

您可能需要使用定制的ModelBinder

请通过查看此帖子。这并不完全是你需要的,但它可以给你一些想法