Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 通过ajax reach调用控制器方法;“404未找到”;_C#_Ajax_Asp.net Mvc - Fatal编程技术网

C# 通过ajax reach调用控制器方法;“404未找到”;

C# 通过ajax reach调用控制器方法;“404未找到”;,c#,ajax,asp.net-mvc,C#,Ajax,Asp.net Mvc,尝试调用我的控制器的方法时出错(控制器的名称为ProductsController): 调用如下代码: $(document).ready(function () { $.ajax({ type: 'POST', url: '@Url.Action("GetProducts", "ProductsController")', dataType: 'json', cache: false

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

调用如下代码:

$(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 ://本地主机:56408/ProductsController/GetProducts 404(未找到)


您知道问题出在哪里吗?

使用控制器名称前缀
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对控制器使用命名约定。

只需使用控制器名称前缀
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(""),
});