我有这段代码;
<form action="@Url.Action("Index", "MyController")" method="post" >
<button class="btn btn-large btn-primary" id="btnNext">Click Here</button>
</form>
但是当点击该按钮时,它会重定向到http://<domain>:2024/MyController
并收到http错误
405.0不允许使用目录列表。
如果我手动将网址更改为http://<domain>:2024/MyController/Index
,我会收到我的网页。
当我将表单代码更改为下面时,它可以正常工作。
<form action="@Url.Action("MyAction", "MyController")" method="post" >
...
索引方法声明是;
public async Task<ActionResult> Index()
{
...
}
所以给您带来不便,这是它发生的唯一地方。我可以通过不使用Index操作来解决它,但是如何跟踪它并修复它?
答案 0 :(得分:0)
除了检查路由规则外,您还可以使用Html.BeginForm
帮助程序方法正确创建表单。
@using(Html.BeginForm("Action", "ControllerName"), HttpMethod.Post)
{
//form controls
}