我今天启动了 VS 2015 来完成一些工作,它说有一个 nuget 更新,所以我更新了它。 之后,我创建了一个新项目来测试一些东西,但没有安装 nuget。打开以前的项目并尝试安装来自 nuget 的更新,但全部失败。
大多数错误是项目不可用,但我在尝试不同的东西时无法加载依赖项和其他一些细微差别。
它到处都失败并且无法使用。我怎样才能回到以前的版本?我什至不知道以前是哪个版本以及现在安装了什么。
它确实适用于 MVC6 项目。
System.Runtime.InteropServices.COMException (0x80004005): Project unavailable. ---> System.Runtime.InteropServices.COMException (0x80004005): Project unavailable.
at EnvDTE.Project.get_Object()
at NuGet.PackageManagement.VisualStudio.EnvDTEProjectUtility.GetReferences(Project project)
at NuGet.PackageManagement.VisualStudio.EnvDTEProjectUtility.GetReferencedProjects(Project envDTEProject)
at NuGet.PackageManagement.VisualStudio.VSSolutionManager.<>c__DisplayClass7.<GetDependentEnvDTEProjectsDictionary>b__6()
at Microsoft.VisualStudio.Shell.InvokableAction.InvokeMethod()
at Microsoft.VisualStudio.Shell.InvokableBase.Invoke()
at NuGet.PackageManagement.NuGetPackageManager.<ExecuteNuGetProjectActionsAsync>d__d2.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at NuGet.PackageManagement.UI.UIActionEngine.<ExecuteActions>d__1b.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at NuGet.PackageManagement.UI.UIActionEngine.<PerformAction>d__0.MoveNext()
我今天在 VS 2017 中遇到了这种情况,解决方案是重新启动 Visual Studio 并解决了它。
我打开了配置,删除了 v3 api 端点并保存了设置,现在一切都恢复正常了。我不确定更新是否以某种方式扰乱了配置,或者是已修复的“nuget 服务器”问题。
新项目中还缺少packages.config,因此我必须使用以下内容手动创建它:
<?xml version="1.0" encoding="utf-8"?>
<packages>
</packages>
如果这是#1,我将我所做的解决问题的方法留在这里。
打开 nuget 配置,禁用 v3 feed,保存并重试。
我除了删除源码包,重新添加并重新启动Visual Studio之外没有做任何事情,我希望这会对某人有所帮助