我试图从我的控制器返回不同的视图。但是,尽管显示了正确的视图,但 URL 保持不变。
这是我的/Company/Create
看法。
@using (Html.BeginForm("Create", "Company", FormMethod.Post))
{
// Form here
}
所以基本上,表单和模型被提交到/Company/Create
行动。如果提交的模型是有效的,那么我处理数据并重定向到 /Company/Index 视图
return View("Index");
正如我所说,显示了正确的视图,但是 URL(地址栏)仍然是http://.../Company/Create
我试过RedirectToAction("Index");
它也不起作用。而且我认为它不是一个好的 MVC 实践。我有一个单一的布局和公司视图呈现RenderBody()
有任何想法吗 ?
谢谢。
编辑 :
这是我的行动方法,
[HttpPost]
public ActionResult Create(CompanyCreate model)
{
/* Fill model with countries again */
model.FillCountries();
if (ModelState.IsValid)
{
/* Save it to database */
unitOfWork.CompanyRepository.InsertCompany(model.Company);
unitOfWork.Save();
RedirectToAction("Index");
return View();
}
// If we got this far, something failed, redisplay form
return View(model);
}