我想了解在ASP.NET MVC 2中使用DropDownListFor
帮助程序实现DropDownList
的最佳方式。这是一个多部分问题。在ASP.NET MVC 2中实现DropDownList的最佳方式?
首先,将列表数据传递给视图的最佳方式是什么?
- 合格名单在你的模型包含数据
- 一个
SelectList
财产转至通过ViewData
我如何在DropDownList
空值列表?我是否应该在创建时将其构建到SelectList
中,或者是否有其他方法可以告诉帮助程序自动创建空值?
最后,如果由于某种原因存在服务器端错误,我需要重新显示屏幕DropDownList
,我是否需要再次获取列表值以传入视图模型?这些数据不会在帖子之间维护(至少在我通过视图模型传递的时候不会),所以我只需要再次获取它(缓存)。我正确地处理这个问题吗?
使用ViewData时遇到的问题是它使您的控制器难以测试。如果你把所有东西放在ViewModel中,你的测试会更好。 – Mac 2010-04-30 00:17:07
实际上并没有什么不同 - 使用ViewModel你必须拼出ViewData.Model,否则你只需要用一个键来请求它。没有区别... – 2010-06-02 03:55:09
http://stackoverflow.com/a/5177332/986862 – 2013-12-11 12:21:42