通过ajax调用控制器方法到达" 404未找到"

时间:2016-08-06 14:22:26

标签: c# ajax asp.net-mvc

在尝试调用我的控制器方法时遇到错误(控制器的名称为ProductsController):

public ActionResult GetProducts()
{
    return false;
}

调用这样的代码:

$(document).ready(function () {
        $.ajax({
            type: 'POST',
            url: '@Url.Action("GetProducts", "ProductsController")',
            dataType: 'json',
            cache: false,
            contentType: 'application/json; charset=utf­8',
            data: JSON.stringify(""),
    })

Chrome中的控制台说:

  

jquery-1.10.2.js:8720 POST http   :// localhost:56408 / ProductsController / GetProducts 404(Not Found)

你知道这是什么问题吗?

1 个答案:

答案 0 :(得分:2)

使用控制器名称前缀Products代替ProductsController

$(document).ready(function () {
    $.ajax({
        type: 'POST',
        url: '@Url.Action("GetProducts", "Products")',
        dataType: 'json',
        cache: false,
        contentType: 'application/json; charset=utf­8',
        data: JSON.stringify(""),
});

Asp.Net-MVC使用控制器的命名约定。