c# - MVC Razor 表单按钮未调用指定的控制器
问题描述
所以在我看来,我有:
<div id="createProductModal" class="modal fade" tabindex="-1" role="dialog">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title">Create Product</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
@using (Html.BeginForm("Create", "Product", FormMethod.Post, new { id = "createProductForm", @class = "form-horizontal"}))
{
<div class="form-group">
<div class="col-md-4">
@Html.LabelFor(m => Model.Product.Name, new { @class = "control-label" })
</div>
<div class="col-sm-8">
@Html.TextBoxFor(m => Model.Product.Name, new { @class = "form-control" })
</div>
</div>
<div class="form-group">
<div class="col-md-4">
@Html.LabelFor(m => Model.Product.IsActive, new { @class = "control-label" })
</div>
<div class="col-sm-8">
@Html.CheckBoxFor(m => Model.Product.IsActive, new { @class = "form-control" })
</div>
</div>
}
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary" data-dismiss="modal" onclick="$('#createProductForm').submit();">Add product</button>
<button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
</div>
</div>
</div>
</div>
然后在我的ProductsController
我添加了一个像这样的动作:
[HttpPost]
public ActionResult Create(Product product)
{
return View();
}
但由于某种原因,当单击提交时,它会将我重定向到此 URL:
http://localhost/Product/Create
并抛出一个 404 错误,如下所示:
The resource cannot be found.
我没有在路由配置中定义路由,这应该没关系吧?
有谁明白我似乎做错了什么?
解决方案
第二个参数Html.BeginForm
是控制器名称。鉴于您有一个ProductsController
, 而不是
Html.BeginForm("Create", "Product", ...
尝试
Html.BeginForm("Create", "Products"
推荐阅读
- c++ - 链接器标志 -Wl,--exclude-libs,ALL 在所有情况下都不起作用
- timeout - Pentaho PDI 在 5 分钟后超时 JDBC 连接并出现 Java EOF 错误
- python - 如何根据另一列中的值检查 pandas df 列值是否存在?
- leaflet - 如何在传单中的多边形内获得一个圆圈
- kubernetes - 在本地系统中哪里可以找到 Kubernetes 调度程序配置文件
- mongodb - 将monogdb集合中的数据导出到grafana
- android - Android Studio:“AVD Pixel_2_API_30 的模拟器进程已终止。” 在 MacBook Pro M1(Apple Silicon)上
- firebase - A/B 测试:事件计数指标,而不是转化指标
- solr - solr 在带有冒号的 id 上流式传输最短路径错误
- php - 如何在不同的引导选项卡上调用 ajax?