You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.NET MVC 4中[HttpPost]标记的Create Action无法触发求助

ASP.NET MVC 4中[HttpPost]标记的Create Action未触发问题

我是ASP.NET MVC 4的新手,在使用[HttpPost]特性时遇到问题:控制器中标记了[HttpPost]的Create Action并未触发。

视图截图

视图截图

控制器代码

public ActionResult Create()
{
    return View();
}

[HttpPost]
public ActionResult Create(TourismCategory Info)
{
    if (ModelState.IsValid)
    {
        
        return RedirectToAction("Index");
    }
    else
    {
        return View();
    }
}

排查及解决建议

  • 确认视图表单提交方式:
    必须使用POST方法提交表单,推荐用MVC内置的@using (Html.BeginForm("Create", "你的控制器名称", FormMethod.Post))包裹表单内容,避免手动写HTML表单时遗漏method属性或写错提交路径。
  • 检查模型绑定匹配度:
    视图中表单控件的name属性必须和TourismCategory类的属性名称完全一致(大小写敏感),比如模型属性为CategoryName,输入框的name就得是CategoryName,否则模型绑定失败会导致Action无法正常接收参数。
  • 排查客户端验证拦截:
    如果视图启用了客户端验证(比如通过DataAnnotations特性),输入内容不符合验证规则时,表单会被阻止提交。可以暂时关闭客户端验证(在web.config中设置<add key="ClientValidationEnabled" value="false" />)测试,或者修正输入内容符合验证要求。
  • 检查路由配置:
    确保自定义路由没有覆盖默认路由规则,默认路由模板为{controller}/{action}/{id},若路由规则修改不当,可能导致POST请求无法匹配到目标Action。

内容的提问来源于stack exchange,提问作者Eman ELbaz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 04:15:42