【问题标题】:Can't add reference to System.IO, System.Runtime and System.Threading.Tasks无法添加对 System.IO、System.Runtime 和 System.Threading.Tasks 的引用
【发布时间】:2016-03-30 12:50:11
【问题描述】:

我正在使用 Visual Studio Community 2015 开发针对 .NET 4.5 的 Visual Basic 应用程序。我没有编写应用程序,所以我使用 NuGet 添加了所有缺少的依赖项,但是无论我尝试什么,我都无法添加 3 个依赖项。这是我在构建项目时遇到的众多错误之一:

此项目引用了此项目中缺少的 NuGet 包 计算机。启用 NuGet 包还原以下载它们。更多 信息,请参阅http://go.microsoft.com/fwlink/?LinkID=317567

这是依赖项:

  • System.IO
  • System.Runtime
  • System.Threading.Tasks

我尝试使用NuGet 安装它们,但例如在尝试安装同时安装System.RuntimeSystem.Threading.TasksSystem.IO 时出现此错误:

无法安装软件包“System.Runtime 4.0.20”。你正试图 将此包安装到目标项目中 '.NETFramework,Version=v4.5',但包中不包含任何 与之兼容的程序集引用或内容文件 框架。如需更多信息,请联系包作者。

我还尝试手动添加它们,添加 .dll 在我的情况下:

  • C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\Facades\System.IO.dll
  • C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\Facades\System.Runtime.dll
  • C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\Facades\System.Threading.Tasks.dll

但也不起作用。我还尝试删除System.Runtime,因为它说here和答案here,都没有成功。

这是我References的图片:

【问题讨论】:

  • System.Runtime 4.0.20 需要 NET4.6。我认为这里报告的 NuGet 包有问题github.com/NuGet/Home/issues/1243
  • 有人解决这个问题吗?
  • 我遇到了同样的问题。很想知道。

标签: .net vba visual-studio-2015


【解决方案1】:

我也面临这个问题。我已经解决了这个问题

  1. 删除 bin & obj 文件夹 您可以使用以下命令清除您的项目 bin 和 obj 文件夹。 打开您的推荐提示,转到您项目的根目录,然后在推荐下方运行

    FOR /F "tokens=*" %G IN ('DIR /B /AD /S bin') DO RMDIR /S /Q "%G

    FOR /F "tokens=*" %G IN ('DIR /B /AD /S obj') DO RMDIR /S /Q "%G

  2. 删除我机器中的临时文件

为避免以后出现此问题,请维护单独的文件夹 (DependentAssembly) 来存储这些程序集。当 nuget 还原包时,它会更新一个新的包 dll。因此,由于在新程序集中对现有方法进行了一些更改,因此可能会出现构建错误。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-05-15
    • 1970-01-01
    • 2023-03-30
    • 1970-01-01
    • 1970-01-01
    • 2011-03-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多