【发布时间】:2012-07-09 13:51:50
【问题描述】:
当我需要将一个 ViewModel 类传递到 asp 页面(包含要显示的各种数据)并且我需要 提交另一个 Model 类时,我应该怎么做? strong>(通过form标签)返回服务器?
【问题讨论】:
标签: asp.net-mvc asp.net-mvc-3 model viewmodel
当我需要将一个 ViewModel 类传递到 asp 页面(包含要显示的各种数据)并且我需要 提交另一个 Model 类时,我应该怎么做? strong>(通过form标签)返回服务器?
【问题讨论】:
标签: asp.net-mvc asp.net-mvc-3 model viewmodel
在主视图模型中嵌套“其他视图模型”。然后将表单的控件绑定到子模型的属性上。
动作方法签名:
[HttpPost]
public ActionResult Foo(SubModel model) { /* ... */ }
【讨论】:
您可以使用自定义模型绑定器根据输出模型生成的表单绑定输入模型。 查看此链接了解更多信息:
http://buildstarted.com/2010/09/12/custom-model-binders-in-mvc-3-with-imodelbinder/
【讨论】:
如果两个视图模型的属性或多或少相同,则默认模型绑定器将负责,否则您必须使用自定义模型绑定器。
如果您必须使用要在发布时绑定的 ViewModel 属性的名称创建 html 字段,则其他选项。
【讨论】: