从MVC中的View中返回强类型对象的所有字段

时间:2010-07-13 19:26:24

标签: c# asp.net-mvc

我有一个视图,主管选择是否批准某些内容并输入评论。此视图不显示大多数字段。视图是强类型的。

我很好奇如何将整个对象返回给控制器。看起来它只是返回我在表单上的字段。

2 个答案:

答案 0 :(得分:2)

将所有额外数据存储在页面上的隐藏输入字段中,或者将项目的ID存储在隐藏字段中,并在每次加载页面时从存储库加载对象(我的首选方法)。

编辑: 您还可以使用较少的参数创建另一个对象,并且仅将缩小的对象发送到视图,该视图将返回完全填充,然后可以映射回完整对象(更多MVVM方法)。

答案 1 :(得分:0)

以与放在视图中相同的方式将其放回原处。您不必发布已有的数据。

public ActionResult Get()
{
   var viewModel = constructViewModel();
   return View(viewModel);
}

public ActionResult Post(ViewModelChanges changes)
{
  var viewModel = constructViewModel();
  viewModel.SomeProperty = changes.SomeProperty;
  return View(viewModel);
}