【发布时间】:2014-03-11 16:21:20
【问题描述】:
需要从 ajax 接收帖子并将其放入我的控制器方法中。 Ajax 正在输出正确的值。
我创建了一个名为 ArticleScore 的 api 控制器。在控制器中,我想通过 ajax 中的值进入方法 SaveRating:
[HttpPost]
private static int SaveRating(int articleID, int rate)
这是我的 Ajax:
$.ajax({
type: "POST",
url: '@Url.Action("SaveRating","ArticleScore")',
data: JSON.stringify({ articleID: artID, rate: v }),
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function () {
alert("success");
},
error: function () {
alert("I'm AJAX and I don't like to work");
}
});
我的老师告诉我使用路由。因此,在我的 global.asax 中,我从阅读的一篇文章中输入了以下内容:
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Rating", // Route name
"{controller}/{action}/{articleID/{rate}", // URL with parameters
new { controller = "ArticleScore", action = "SaveRating", articleID = "", rate = "" } // Parameter defaults
);
routes.MapRoute(
"Default", // Route name
"{controller}/{action}/{id}", // URL with parameters
new { controller = "Home", action = "Index", id = "" } // Parameter defaults
);
}
但是它不起作用。我相信这是我 maproute 中的 URL 参数。
【问题讨论】:
标签: jquery ajax asp.net-mvc-4 asp.net-mvc-routing