使用编辑器模型从视图将数据返回到控制器



我想返回 EditorForModel 从用户那里收到的所有对象数据。 事件对象大约有 5 个字段。我想将整个对象返回到控制器中的 Save 方法,我可以在其中进行数据库更新。 我不能使用 foreach 循环,因为 i枚举器不可用。 如何访问操作链接中的数据? 谢谢!

@model EventsMVC.Models.Event
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Edit</title>
</head>
<body>
<div> 
        @Html.EditorForModel()
        @Html.ActionLink("Save", "Edit")
        @Html.ActionLink("Cancel and return to List", "Index")
   </div>
</body>
</html>

以下代码将有助于解决您的问题:

您更改的视图代码:

@model EventsMVC.Models.Event
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Edit</title>
</head>
<body>
<div> 
      //save - ActionName and Account(for ex)-ControllerName
       @using (Html.BeginForm("Save", "Account")) 
      { 
        @Html.EditorForModel() 
       <input type="submit" value="SubmitData" /> 
     }
   </div>
</body>
</html>

在您的控制器中:

    [HttpPost]
    public ActionResult Save(Event eventmodel)
    {
         //your update logic here
    }

希望以上信息对您有所帮助,请让我知道您的想法或反馈

谢谢

卡尔西克

我不确定我是否理解你的问题。

通常在控制器方法中,您将模型对象作为参数包含在内,MVC 框架将自动使用页面中的数据填充模型对象。

类似的东西

    public ActionResult Index(EventsMVC.Models.Event model)
    {
       //... do stuff with model
    }

然后,可以通过模型类中的 Name 属性直接引用这些属性。

不应要求枚举。

最新更新