C# 我可以将四个不同的控制器连接到一个窗体吗?

C# 我可以将四个不同的控制器连接到一个窗体吗?,c#,model-view-controller,C#,Model View Controller,我有四个不同的表,它们只需要连接到一个表单,所以当我提交表单时,所有四个表都会检索数据。我可以将四个不同的控制器(每个表一个)连接到一个窗体吗?否,您的窗体只连接到一个控制器操作。然而,一旦你点击了这个动作,你就可以将你的信息插入到你需要的任何表格中 在下面的示例中,表单将连接到“主”控制器和驻留在主控制器中的“创建”操作 @using (Html.BeginForm("Create", "Home", FormMethod.Post)) { <div class="editor

我有四个不同的表,它们只需要连接到一个表单,所以当我提交表单时,所有四个表都会检索数据。我可以将四个不同的控制器(每个表一个)连接到一个窗体吗?

否,您的窗体只连接到一个控制器操作。然而,一旦你点击了这个动作,你就可以将你的信息插入到你需要的任何表格中

在下面的示例中,表单将连接到“主”控制器和驻留在主控制器中的“创建”操作

@using (Html.BeginForm("Create", "Home", FormMethod.Post))
{

    <div class="editor-label">
        @Html.LabelFor(model => model.Content)
    </div>
    <div class="editor-field">
        @Html.TextAreaFor(model => model.Content, new { @cols = 60, @rows = 20 })
        @Html.ValidationMessageFor(model => model.Content)
    </div>

    <p>
        <input type="submit" value="Save" />
    </p>
}

不,表单提交到一个URL,由一个控制器上的操作处理,该操作可能通过数据库连接与多个表交互。我认为你需要访问教程网站来更好地理解这一点。我怀疑您需要查看MVC模式。最好反向操作:if(!ModelSate.IsValid)返回视图(Model);这将减少嵌套
[HttpPost]
public ActionResult Create(PostViewModel model)
{
    if (ModelState.IsValid)
    {

        //Do all your database/table inserts here.
        //OR connect to your Data Access Layer (DAL)
        //and have it do the inserts.

    }
    return View(model);
}