Asp.net mvc 4 双视图1型MVC

Asp.net mvc 4 双视图1型MVC,asp.net-mvc-4,Asp.net Mvc 4,当使用MVC捕获表单中的信息时,我是否可以在两个视图中拆分视图,但仍然使用单个模型,并在最后一个表单中写入db 例如Account.cs模型有名称和姓氏 我希望view1捕获姓名,view2捕获姓氏,当我单击“提交”时,它必须写入数据库。您可以在任意多个视图上使用模型。事实上,MVC的一个特性是,它允许您在不同的视图中使用相同的模型和控制器操作,以不同的方式呈现相同的数据 但是,在这种情况下,您将负责将数据从第一个视图导入第二个视图,因此提交操作可以同时写入这两个视图。我认为不可能跨两个视图使用

当使用MVC捕获表单中的信息时,我是否可以在两个视图中拆分视图,但仍然使用单个模型,并在最后一个表单中写入db

例如Account.cs模型有名称和姓氏
我希望view1捕获姓名,view2捕获姓氏,当我单击“提交”时,它必须写入数据库。

您可以在任意多个视图上使用模型。事实上,MVC的一个特性是,它允许您在不同的视图中使用相同的模型和控制器操作,以不同的方式呈现相同的数据


但是,在这种情况下,您将负责将数据从第一个视图导入第二个视图,因此提交操作可以同时写入这两个视图。

我认为不可能跨两个视图使用单个表单。但是,可以使用单个模型为两个视图使用两种形式。在view1中,捕获名称并调用以下控制器操作:

public ActionResult(Account model)
{
    return View("View2", model");
}
然后,只需使用隐藏输入将来自view1的信息存储在view2的表单中:

@using (Html.BeginForm())
{
    @Html.AntiForgeryToken()
    <div class="form-horizontal">
        @Html.ValidationSummary(true)
        @Html.HiddenFor(x => x.Name)
        @Html.TextBoxFor(x => x.Surname)
    </div>
}
@使用(Html.BeginForm())
{
@Html.AntiForgeryToken()
@Html.ValidationSummary(true)
@Html.HiddenFor(x=>x.Name)
@Html.TextBoxFor(x=>x.namname)
}