Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/14.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# Web API路由-找到多个与请求匹配的操作_C#_Asp.net Mvc_Asp.net Web Api - Fatal编程技术网

C# Web API路由-找到多个与请求匹配的操作

C# Web API路由-找到多个与请求匹配的操作,c#,asp.net-mvc,asp.net-web-api,C#,Asp.net Mvc,Asp.net Web Api,我找到了这条路线: routes.MapRoute( name: "Default", url: "{controller}/{action}/{id}", defaults: new { id = UrlParameter.Optional } ); 这一行动: [System.Web.Http.HttpPost] [System.Web.Http.ActionName("

我找到了这条路线:

        routes.MapRoute(
            name: "Default",
            url: "{controller}/{action}/{id}",
            defaults: new { id = UrlParameter.Optional }
        );
这一行动:

    [System.Web.Http.HttpPost]
    [System.Web.Http.ActionName("GetLoginSeed")]
    public object GetLoginSeed()

    [System.Web.Http.HttpPost]
    [System.Web.Http.AllowAnonymous]
    [System.Web.Http.ActionName("Authenticate")]
    public object PerformLogin(JObject jr)
这是Post请求:

    http://localhost:61971/api/Login/GetLoginSeed
为什么我总是得到一个匹配请求错误的多个操作

我找到了这条路线:

        routes.MapRoute(
            name: "Default",
            url: "{controller}/{action}/{id}",
            defaults: new { id = UrlParameter.Optional }
        );
您所展示的是MVC控制器的路由。我希望您认识到WebAPI控制器是一个完全不同的东西。他们在
~/App\u Start/WebApiConfig.cs
中定义了自己的路由

因此,请确保您在Web API路由定义中包含了
{action}
标记(我再次重申,这与您的MVC路由定义无关):