【问题标题】:Could not load file or assembly 'System.Net.Http' or one of its dependencies [duplicate]无法加载文件或程序集“System.Net.Http”或其依赖项之一[重复]
【发布时间】:2012-03-22 17:24:24
【问题描述】:

可能重复:
Could not load file or assembly 'System.Net.Http, Version=2.0.0.0 in MVC4 Web API

我在 vs11 中创建了一个 .net mvc 4 项目。我已将运行时设置为 4.0 并将应用程序部署到 appharbor。当我运行应用程序时,我得到“无法加载文件或程序集 'System.Net.Http' 或其依赖项之一。”。

有什么想法吗?

如果我删除对这个程序集的引用,应用程序可以工作,但如果我尝试使用新的 web api 功能,它会崩溃并显示相同的消息(当然)。

应该可以在 .NET 4.0 运行时上运行 web api 功能吧?

编辑:我看到当我在 system.net.http.dll 上获得属性时,它显示版本 1.0.0.0,而在 VS 的参考中显示为 2.0.0.0。这可能是它无法加载的原因吗?

【问题讨论】:

    标签: c# asp.net-mvc asp.net-mvc-4 dependencies appharbor


    【解决方案1】:

    “应该可以在 .NET 4.0 运行时上运行 Web api 功能,对吧?”

    是的。

    您是否尝试过通过 Nuget 安装它?

    http://nuget.org/packages/AspNetWebApi

    【讨论】:

    • 是的,我通过 nuget 安装了它,所有的 DLL 都在那里,所以我认为它应该可以工作。
    • 另外,如果您要部署到 Appharbor,我建议您使用 NuGet 包还原选项 :) blog.appharbor.com/2012/2/06/… 我在使用 AspNetWebApi 包的 MVC 3 应用程序上遇到了类似的问题,同时托管在 AppHarbor 上。希望它成功:)
    • 也尝试了恢复选项...没有运气:)
    • 我没有互联网连接。如何获取 AspNetWebApi 包?
    【解决方案2】:

    我在将应用程序部署到 appharbor 时遇到了同样的问题。它还不支持 .NET 4.5 的问题。我做了什么。

    1. 将我的项目切换到 .NET 4.0 配置文件。
    2. 已卸载 Web API NuGet 包。
    3. 再次安装 Web API (Beta) NuGet 包。
    4. 已验证 .csproj 文件包含所有引用的程序集,因此它将始终从 Bin 文件夹而不是 GAC 中获取。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-12
      • 2012-01-14
      • 1970-01-01
      相关资源
      最近更新 更多