2016-03-28 92 views
0

我有一个HomeController用于登陆页面(home,about,contact us)和home视图我有两种类型(2个独立的viewmodels)和登录(另一个viewmodel)的注册。我想知道是否有方法将表单从索引视图(HomeController)发布到另一个控制器。我试图用标签助手来完成此操作,但它似乎不起作用。 Here`s我的代码,我正在努力做到这一点Post form to other controller

<form asp-controller="Employee" asp-action="Register" method="post" role="form" class="ui large form"> 
.... 
</form> 

这里是在员工控制器我注册行动

[HttpPost] 
    [AllowAnonymous] 
    [ValidateAntiForgeryToken] 
    public async Task<IActionResult> Register(EmployeeRegisterViewModel employeeRegisterModel) 
    { 
     if (ModelState.IsValid) 
     { 
      IdentityResult result = await _service.CreateEmployeeAccount(employeeRegisterModel); 
      if (result.Succeeded) 
      { 
       return RedirectToAction(nameof(EmployeeController.Index), "Employee"); 
      } 
      AddErrors(result); 
     } 

     return View(employeeRegisterModel); 
    } 

感谢您的帮助

+1

尝试'@using(Html.BeginForm( “行动”, “控制器”,FormMethod.Post)){...}' –

+0

改变你的ASP -action to asp-action =“Register/Register” – Rex

回答

2

使用剃刀语法Html.BeginForm

@using (Html.BeginForm("ActionName", "ControllerName", FormMethod.Post, new { @class = "ui large form"})) 
{ 

} 

enter image description here

或者纯HTML做到这一点

<form action="/ControllerName/ActionName" asp-action="Register" method="post" role="form" class="ui large form"> 
.... 
</form> 
1
@using (Html.BeginForm("Register", "YourController", FormMethod.Post, null)) 
    { 
     <input type="submit" value="Html PsBk Click" /> 
    }