Asp.net mvc 4 简单mvc路由问题

Asp.net mvc 4 简单mvc路由问题,asp.net-mvc-4,asp.net-mvc-routing,Asp.net Mvc 4,Asp.net Mvc Routing,我正在尝试从部分视图提交表单,但一直得到404。 以下是表格: @model PMP.WebUI.Models.ViewModel.VMTakeQuiz @using (Html.BeginForm("Quiz", "QuizController", FormMethod.Post, new { id = "take-quiz-form" })) { .. <input type="submit" name="LaunchQuiz" value="Launch Quiz!" cla

我正在尝试从部分视图提交表单,但一直得到404。
以下是表格:

@model PMP.WebUI.Models.ViewModel.VMTakeQuiz

@using (Html.BeginForm("Quiz", "QuizController", FormMethod.Post, new { id = "take-quiz-form" }))
{   
..
<input type="submit" name="LaunchQuiz" value="Launch Quiz!" class="submit-button" />  
..  
}   
下面是控制器及其操作:

public class QuizController : Controller
{
        [HttpPost]
        public ActionResult Quiz(VMTakeQuiz quiz)
        {
            return null;
        }  
}  
我得到的是404上的信息:
请求的URL:/QuizController/quick


我应该更改什么以将表单提交路由到给定的操作?

只传递控制器名称,而不传递类似“controller”的后缀

@using (Html.BeginForm("Quiz", "Quiz", FormMethod.Post, new { id = "take-quiz-form" }))
{   
..

请求的URL应该是:/quick/quick

只传递控制器名称,不带类似“controller”的后缀

@using (Html.BeginForm("Quiz", "Quiz", FormMethod.Post, new { id = "take-quiz-form" }))
{   
..

请求的URL应该是:/quick/quick

,对于控制器,您不需要在其名称中附加
控制器后缀

@using (Html.BeginForm("Quiz", "Quiz", FormMethod.Post, new { id = "take-quiz-form" }))

另外,请尝试为视图和控制器使用不同的名称。:)

对于控制器,您不需要在其名称中附加
控制器后缀

@using (Html.BeginForm("Quiz", "Quiz", FormMethod.Post, new { id = "take-quiz-form" }))

另外,请尝试为视图和控制器使用不同的名称。:)

为什么您有一个自定义路由,而不让默认路由处理它?据我所知,删除自定义路由可以很好地工作。为什么您有自定义路由,而不让默认路由处理它?据我所知,删除自定义路线会很好。