【发布时间】:2014-08-07 11:31:56
【问题描述】:
我在我的解决方案中创建了一个 MVC 4 Web API 应用程序,但我现在遇到了 2 个错误,我需要一些帮助。
'System.Web.Http.HttpConfiguration' 不包含对 'MapHttpAttributeRoutes' 并且没有扩展方法 'MapHttpAttributeRoutes' 接受类型的第一个参数 可以找到“System.Web.Http.HttpConfiguration”(您是否缺少 使用指令还是程序集引用?)
以下代码出现此错误
文件:WebApiConfig.cs(在 App_Start 文件夹中)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web.Http;
using System.Web;
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
// Web API configuration and services
// Web API routes
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
}
}
另一个,在 Global.asax 中
'System.Web.Http.GlobalConfiguration' 不包含定义 对于“配置”
文件:Global.asax.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Http;
using System.Web.Http.WebHost;
using System.Web.Mvc;
using System.Web.Optimization;
using System.Web.Routing;
public class WebApiApplication : System.Web.HttpApplication
{
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
GlobalConfiguration.Configure(WebApiConfig.Register);
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
}
}
更新
通过 Nuget 安装 WebAPI WebHost(@sa_ddam213 的建议)后,它解决了一些问题,但现在运行我的应用程序时出现此错误
无法加载文件或程序集“System.Net.Http”或其其中之一 依赖关系。定位程序集的清单定义不 匹配程序集引用
Web.config 文件有程序集
<dependentAssembly>
<assemblyIdentity name="System.Web.Http" publicKeyToken="31BF3856AD364E35" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-5.2.0.0" newVersion="5.2.0.0"/>
</dependentAssembly>
【问题讨论】:
-
您确定您的项目“参考”文件夹中有 System.Web 吗?
-
@JohanHjalmarsson 是的,我用一张图片更新了我的问题,我们可以在其中看到该项目中存在的一些参考资料
-
@Lucas_Santos 你能检查你的 web.config 是否有一些程序集重定向吗?
-
你安装了吗
Microsoft.AspNet.WebApi.WebHost很确定你可以 nugetInstall-Package Microsoft.AspNet.WebApi.WebHost -
我在我的项目中卸载了一些 nuget 包,包括 MVC,然后重新安装。解决。谢谢大家帮助我。
标签: c# asp.net-mvc-4 asp.net-web-api