路线值无法取值

时间:2013-06-17 10:31:57

标签: html5 asp.net-mvc-3 controller routes

我想从一个页面路由到另一个页面。

候选人 - 控制器

这里我有代码,

 [Authorize, HttpPost,HandleErrorWithAjaxFilter]
    public ActionResult Details(FormCollection collection)
    {
        Order order = _repository.GetOrder(LoggedInOrder.Id);
            order.CreateDate = DateTime.Now;
            order.Amount = 360;
            order.Validity = 60;
            _repository.Save();


    }

当我点击索引页面“任何链接”时,它会保存在数据库中并转到下一个详细信息页面。

的Index.aspx:

<%:Html.actionlink("Details","Details","Candidatesvas")%>
像那样......

Global.ascx:

     routes.MapRouteLowercase(
          "SaveVas",
          "details/candidatesvas",
          new { controller = "Candidatesvas", action = "Details" }
      );

但是当我点击链接时,它会显示“无法找到资源”。我换了很多路。请帮我。我找不到问题了?

3 个答案:

答案 0 :(得分:0)

您的控制器操作使用[HttPost]属性进行修饰,这意味着只能使用POST谓词访问此操作。然后,您在页面上显示了一些链接:

<%:Html.ActionLink("Details","Details","Candidatesvas")%>

但是你知道链接发送GET请求。如果您希望能够调用此操作,则应从中删除[HttpPost]属性,或使用HTML <form>而不是链接。

答案 1 :(得分:0)

试试这个

<%:Html.actionlink("Details","Details","Candidatesvas",null,null)%>

答案 2 :(得分:0)

您不能将Html.actionlink用于post方法。

转到jquery

或点击功能提交表单提交。