【问题标题】:System.Net.Http.Formatting.FormUrlEncodedMediaTypeFormatter ErrorSystem.Net.Http.Formatting.FormUrlEncodedMediaTypeFormatter 错误
【发布时间】:2014-10-06 14:24:14
【问题描述】:

我正在尝试将我的 asp.net 项目从 Mvc 4 升级到 5。我按照以下说明进行操作:

http://www.asp.net/mvc/tutorials/mvc-5/how-to-upgrade-an-aspnet-mvc-4-and-web-api-project-to-aspnet-mvc-5-and-web-api-2

当我想编译我的项目时,我收到以下错误:

无法从程序集“System.Net.Http.Formatting, Version=5.2.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”加载类型“System.Net.Http.Formatting.FormUrlEncodedMediaTypeFormatter”

如果我添加对System.Net.Http.Formatting Version=4.0.0.0 的引用,则会收到此错误:

Assembly 'System.Web.Http, Version=5.2.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' 使用 'System.Net.Http.Formatting, Version=5.2.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'具有比引用程序集“System.Net.Http.Formatting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35”更高的版本

谁能帮帮我?

【问题讨论】:

  • 如消息所述:包括正确的版本。 System.Web.Http 引用 5.2 而你引用 4.0
  • 微软发布 nugets 的地狱,我们遇到了这些更新问题。 nuget 中也没有对 dll 的正确引用

标签: asp.net .net asp.net-mvc asp.net-mvc-4 asp.net-mvc-5


【解决方案1】:

我认为您的问题中未说出口的部分(@Adriano 显然没有推断出)是您在添加参考时没有在列表中看到版本 5.2.0.0,您只看到 4.0.0.0 版本,对吧?

如果是这样,问题可能出在您的 NuGet 包上,这意味着您有一个额外的包需要升级。就我而言,它是Microsoft.AspNet.WebApi.Client(显然System.Net.Http.Formatting 在那个程序集中……?!?),它在我的解决方案中的一个项目中升级,但在另一个项目中没有升级。在您的情况下,您可能需要安装该特定软件包的升级,和/或在升级其他 MVC 软件包时错过了它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-24
    • 2015-03-25
    • 2013-05-15
    • 1970-01-01
    相关资源
    最近更新 更多