使用 MapHttpRoute 为 WebAPI 配置路由时出错

Alv*_*nha 4 c# asp.net asp.net-web-api visual-studio-2015

我有一个基于 Frameworks 4.0 和 Visual Studio 2013 的带有 WebAPI 的 ASP.Net Web 应用程序。

最近对系统进行了格式化并安装了Visual Studio 2015。现在我无法在 Global.asax 文件中映射 WebAPI 的路由。

下面是我用来配置路由的代码。

RouteTable.Routes.MapHttpRoute(
        name: "DefaultApi",
        routeTemplate: "api/{controller}/{action}/{id}",
        defaults: new { id = System.Web.Http.RouteParameter.Optional }
        );
Run Code Online (Sandbox Code Playgroud)

我不断收到以下错误。

“RouteCollection”不包含“MapHttpRoute”的定义,并且最佳扩展方法重载“HttpRouteCollectionExtensions.MapHttpRoute(HttpRouteCollection, string, string, object)”需要类型为“HttpRouteCollection”的接收器

使用 Nuget 包管理器,我尝试重新安装在旧代码中使用的 ASP.NET MVC4。我安装/重新安装了 WebAPI,包括最新版本和之前使用的旧版本。我尝试使用 System.Web.Http(再次是最新版本和之前使用的 4.something 版本),但我不断收到上述错误。请帮忙!

Dev*_*per 6

请检查您是否引用了 System.Web.Http.WebH??ost.dll。如果问题仍然存在,请尝试单独重新安装该软件包。包 - Microsoft.AspNet.WebApi.WebHost