servicestack 如果缺少安装的版本,如何升级nuget软件包?,servicestack,nuget,servicestack,Nuget" /> servicestack 如果缺少安装的版本,如何升级nuget软件包?,servicestack,nuget,servicestack,Nuget" />

servicestack 如果缺少安装的版本,如何升级nuget软件包?

servicestack 如果缺少安装的版本,如何升级nuget软件包?,servicestack,nuget,servicestack,Nuget,遇到这样一种情况,几个月前我将一个应用程序部署到生产环境中,现在我需要在一台全新的机器上对其进行一些工作。我要做的第一件事是提取源代码,nuget restore不会还原,因为它找不到它开发时所使用的包的特定版本。当我在nuget.org上查看这个包版本时,它不在那里。那么,如何将我的解决方案升级到最新的二进制文件呢 Visual Studio 2013正在尝试将ServiceStack“4.0.39”更新为最新版本,在撰写本文时为“4.0.40” 谢谢,, Stephen我提出的最佳解决方案是

遇到这样一种情况,几个月前我将一个应用程序部署到生产环境中,现在我需要在一台全新的机器上对其进行一些工作。我要做的第一件事是提取源代码,nuget restore不会还原,因为它找不到它开发时所使用的包的特定版本。当我在nuget.org上查看这个包版本时,它不在那里。那么,如何将我的解决方案升级到最新的二进制文件呢

Visual Studio 2013正在尝试将ServiceStack“4.0.39”更新为最新版本,在撰写本文时为“4.0.40”

谢谢,,
Stephen

我提出的最佳解决方案是手动编辑Packages.config文件,并将版本号设置为您想要的任何版本。然后恢复应该可以工作。这不是一个完美的解决方案,但它让我走出了一些困境。

我建议您使用Visual Studio的NuGet Package Manager控制台:
工具>NuGet包管理器>包管理器控制台

将NuGet包更新为最新版本的命令:
更新包ServiceStack

将NuGet包更新为特定版本的命令:
更新软件包ServiceStack-Version4.0.40(我知道这是一个古老的答案,但它只是在一些谷歌搜索中出现的)

接受的答案(只是更新packages.config中的版本)的一个问题是,这只是触发了“包还原”——并将跳过包可能具有的任何“安装步骤”(第一次添加包时自动完成的操作,例如添加程序集引用、修改配置文件等)


另一种方法是编辑packages.config并从中删除有问题的包,然后启动VS并添加新版本。这将触发程序包的常规安装例程来完成此操作。

当无法找到或下载packages.config中指定的版本时,此操作不起作用。此外,需要更新*.csproj文件中的引用,将旧版本号替换为新版本号。