MVC4项目中的Web Api无法访问Api Controller

时间:2015-04-06 19:57:01

标签: api asp.net-mvc-4 web

我有一个带有许多控制器的MVC4项目。我在项目的根目录中添加了一个名为BatchDetailsController的Api控制器。

我还创建了一个WebApiConfig类,如下所示

 public static void Register(HttpConfiguration config)
        {
            // Web API configuration and services
            // Configure Web API to use only bearer token authentication.

            // Web API routes
            config.MapHttpAttributeRoutes();

            config.Routes.MapHttpRoute(
                name: "DefaultApi",
                routeTemplate: "api/{controller}/{id}",
                defaults: new { id = RouteParameter.Optional }
            );
        }

我还从global.asax调用上面的寄存器方法

  WebApiConfig.Register(GlobalConfiguration.Configuration);
在Application_Start中

现在我尝试使用随后的Urls访问控制器 / BatchDetails / API / BatchDetails / BatchDetails / GET / API / BatchDetails / GET

所有人都返回404

在这种情况下我需要使用的URL是什么

1 个答案:

答案 0 :(得分:0)

例如,当使用visual studio调试/托管项目时,网址为http://localhost:port/api/BatchDetals/ {method}

右键单击该项目,查看是否已选择IIS express并记下端口号。该项目应通过项目URL的visual studio中的run / f5进行。

如果没有,我会重新安装IIS8 express。

Visual Studio Project Settings