【问题标题】:Downgrading .NET Framework causing packages issues降级 .NET Framework 导致包问题
【发布时间】:2018-07-17 13:41:26
【问题描述】:

我正在做一个关于 TFS 的项目。该项目是在别人的 PC 上使用 VS 2017 和最新的 .NET 框架创建的,并发布到 Azure。

我在我的 PC 上获得了项目,我有 VS 2015,我不得不将项目的 .NET 框架更改为 4.6。一切都很好,我可以对项目进行更改并提交。

但是当我尝试从我的 PC 发布到 Azure 时,我收到了一个非常不清楚的错误:

Publish Failed
Connecting to ...

在线寻找解决方案,我不得不将软件包 Microsoft.Net.Compilers 的版本从 2.6.1 降级为 2.4.0 。这很有效!

我关闭了我的电脑。第二天打开项目并运行它,我在本地得到了这个错误:

Could not load file or assembly 'Microsoft.ApplicationInsights, Version=2.6.1, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.

我尝试卸载 Microsoft.ApplicationInsights 并使用版本 2.6.1 重新安装它,但它说我需要 a newer version of nuget

我不知道如何从这里开始。我已经在 Tools -> Extensions -> Updates 中安装了所有更新,但没有任何改变。

为什么我的项目会发生所有这些事情,我该如何解决?

PS:由于许多外部原因,目前无法将我的 VS 升级到 2017。 谢谢。

【问题讨论】:

  • 是否具体提到了它想要什么版本的nuget?
  • @Damien_The_Unbeliever 不,它只是说更新了
  • 为什么要降级?为什么不安装更新的 .net 框架?
  • 最好的解决方案是同时安装 VS2017。您可以同时安装这两个版本。如果您不使用 ApplicationInsights,您可以简单地完全删除项目引用。我相信 VS 喜欢自动添加它来推广该功能。
  • @Greg 我还有很多其他项目在 VS2015 上运行,但没有支持同时拥有这两个版本的硬件。

标签: c# .net visual-studio nuget nuget-package


【解决方案1】:

我在本地也遇到了这个错误,实际上可以通过手动将文件添加到我的项目文件夹来解决,可能值得一试。

【讨论】:

  • Microsoft.ApplicationInsights 文件?
  • @HelpASisterOut 是的,只需将包本身粘贴到您的 VS 项目文件夹中。如果这不起作用,我还会尝试删除您的临时文件(C:\Windows\Microsoft.NET\Framework\v4.0.30319\Temporary ASP.NET Files)并在该文件夹中手动读取它们。我已经设法通过简单地重新启动 Visual Studio 来修复这个错误,所以它是非常不可预测的。
【解决方案2】:

降级 .NET Framework 导致包问题

正如 Hans 所说,nuget 包变化很快,通常需要最新版本的 NuGet。包中的一些新功能仅受较新的 NuGet 支持(如 PackageReference)或较新版本上修复的一些问题。例如,在 Visual Studio 2015 上安装包 Microsoft.EntityFrameworkCore.SqlServer 2.1.1,这需要 NuGet 客户端版本“3.6.0”或更高版本。

所以,这个问题的解决方法是使用 Visual Studio 2015 创建一个新项目,从以前的项目中复制代码,然后将这些 nuget 包一一添加,找出它需要更新版本 nuget 的原因。

但是,我想详细讨论一下这个问题,解决此问题的最佳方法是将 Visual Studio 2017 与 Visual Studio 2015 一起安装。众所周知,不推荐使用低版本的Visual Studio和.net框架打开高版本的Visual Studio和.net框架,总会带来很多不兼容的错误和其他一些奇怪的问题。由于许多外部原因,目前无法将您的 Visual Studio 升级到 2017,因此我建议您可以将 Visual Studio 2017 与 Visual Studio 2015 一起安装。此外,使用不同版本的 Visual Studio 开发相同的项目并将其提交给TFS 服务器可能会带来许多不可预知的风险。

希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-12-25
    • 2017-06-13
    • 2010-12-31
    • 2012-05-27
    • 1970-01-01
    • 2017-09-26
    • 2014-05-21
    • 1970-01-01
    相关资源
    最近更新 更多