我创建了一个包含两个项目的解决方案:一个MVC 4和一个类库。解决方案编译并运行正常。然后我安装包Microsoft’AspNet.WebApi.OData -pre来拉入OData WebApi功能。当我这样做,我在运行时收到以下错误:
安全透明方法“System.Web.Http.GlobalConfiguration.get_Configuration()”尝试访问安全关键类型“System.Web.Http.HttpConfiguration”失败。
当WebApiConfig.Register(GlobalConfiguration.Configuration)在Global.asax中运行时
一旦我这样做,卸载该软件包似乎并没有解决。它清楚地删除了OData组件,但是会留下任何组件造成这种情况。使用-RemoveDependencies删除删除库中的所有WebApi引用,并且我无法将其恢复到工作状态。
我在哪个包中,如何在一个香草MVC4应用程序中启用WebApi OData?
解决方法
如果您从其模板创建一个MVC 4应用程序,那么您正在安装Web API 4.0。如果你使用
install-package 'Microsoft.AspNet.WebApi.OData -pre
您将依赖于ASP.NET Web API 5.0 rc。
我的建议是使用“空ASP.NET Web应用程序”模板而不是MVC 4.0模板。