如果ASP.NET Core的POST请求命中了错误的动作,可能是因为路由配置有误或者动作方法的特性设定错误。以下是一些可能的解决方法:
确保路由配置正确:
确保动作方法的特性设置正确:
下面是一个示例代码,展示了一个正确配置的路由和动作方法的示例:
在Startup.cs文件中的Configure方法中添加以下代码:
app.UseEndpoints(endpoints =>
{
endpoints.MapControllerRoute(
name: "default",
pattern: "{controller}/{action}/{id?}",
defaults: new { controller = "Home", action = "Index" });
});
在控制器中添加以下动作方法:
[HttpPost]
public IActionResult Create([FromBody] MyModel model)
{
// 处理POST请求逻辑
return View();
}
请根据自己的实际情况调整代码。如果问题仍然存在,建议查看日志以获取更详细的错误信息,并进一步调试和排查问题。