【发布时间】:2019-08-22 07:21:58
【问题描述】:
我正在使用 ViewModel 将数据从 HTML 表单获取到 MVC 控制器。 在 ActionResult 参数中,有一个 ViewModel 被填充,它工作正常。
现在,除了视图模型之外,我还想分离视图模型的一个字段。是否可以?换句话说,我想要一个 MyViewModel.MyModel.Id 的副本到另一个 actionresult 参数中。
这是有效的控制器方法:
public ActionResult Edit(AuditViewModelCritereViewModel model){}
现在我想有这种方法
public ActionResult Edit(AuditViewModelCritereViewModel model, int auditId){}
以下是模型:
public class AuditViewModelCritereViewModel
{
public AuditViewModel audit { get; set; }
...
}
public class AuditViewModel
{
public int auditId { get; set; }
...
}
我可以通过添加 HiddenField 来实现这一点,但 clean 是最好的,我想让它比复制 HTML id 值更漂亮。
在 HTML 表单中,这里是字段:
<input data-val="true" id="audit_auditId" name="audit.auditId" type="hidden" value="10">
这是我们感兴趣的 HTTP 请求内容:
这是我迄今为止尝试过的 int 参数:
- int auditId
- int audit_auditId
感谢您的帮助。
【问题讨论】:
标签: asp.net-mvc asp.net-mvc-4 model-binding asp.net-mvc-viewmodel