在ASP.NET Core MVC中,部分表单可能会存在操作URL没有重定向到控制器/方法的问题。这是因为在表单中指定的操作URL与控制器/方法名称不匹配。解决这个问题的方法是将表单中的操作URL修改为正确的控制器/方法名称。
例如,假设我们有以下控制器:
public class HomeController : Controller { public IActionResult Index() { return View(); }
public IActionResult Contact()
{
return View();
}
[HttpPost]
public IActionResult Contact(ContactViewModel model)
{
// do something with the model
return View();
}
}
在这个控制器中,我们有一个Index方法和一个Contact方法。Contact方法是一个POST方法,用于接收ContactViewModel模型。现在,我们有一个在Contact视图中的表单,它应该把数据提交到Contact方法。代码如下:
这个表单的操作URL是“Index”,而不是“Contact”。我们需要修改操作URL,以便它正确重定向到Contact方法:
现在,当表单提交时,它将执行Contact方法,并正确处理模型。请注意,我们还使用了“post”方法,因为Contact方法是一个POST方法。
通过这种方法,我们可以解决ASP.NET Core MVC表单操作URL不重定向到控制器/方法的问题。