2015-04-06 187 views
0

我有一个MVC4项目与许多控制器。我在项目的根目录中添加了一个名为BatchDetailsController的Api控制器。MVC4项目中的Web API无法访问Api控制器

我也在的Application_Start

创建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); 

现在我试图访问控制器通过使用Urls /BatchDetails /api/BatchDetails /BatchDetail S /获取 /API/BatchDetails /获取

他们全部返回404

什么是我需要使用Visual Studio的时候调试/主持该项目在这种情况下

回答

0

例如使用URL url将是http://localhost:port/api/BatchDetals/ {方法}

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

如果不是,我会重新安装IIS8 express。

Visual Studio Project Settings

+0

这正是我所做的http://本地主机:(?视觉工作室卡西尼)50130/API/BatchDetails /获取 – josephj1989

+0

其中项目托管IIS表达其他? –

+0

iisexpress感谢 – josephj1989