从Asp.Net 4.7项目引用.Net Standard 2.0库时出错

时间:2017-11-08 15:44:32

标签: c# asp.net asp.net-web-api .net-standard .net-standard-2.0

我有一个针对asp.net 4.7的MVC项目。 我创建了一个针对.Net standard 2.0

的类库

如果我从我的MVC项目引用类库,我在应用程序启动时会遇到以下异常。

  

System.MissingMethodException:'找不到方法:

     

消息"找不到方法:   ' System.Collections.ObjectModel.Collection`1   System.Web.Http.HttpConfiguration.get_MessageHandlers()'"

目前

GlobalConfiguration.Configure(WebApiConfig.Register);

如果我删除引用,一切都恢复正常。 任何可能出错的想法?​​

2 个答案:

答案 0 :(得分:9)

您需要将此绑定重定向添加到web.config:

<dependentAssembly>
   <assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
   <bindingRedirect oldVersion="0.0.0.0-4.2.0.0" newVersion="4.2.0.0" />
</dependentAssembly>

答案 1 :(得分:0)

如果您的mvc项目的目标是.net 4.6.1,您可以使用.net标准2.0类库。