项目系统遇到错误,尝试加载项目时出现问题。

14

当我尝试加载我的一个项目时,在Visual Studio 2017 v15.7.1中出现以下错误窗口:

VS error window

当我访问指定的路径时,在测试文件中我发现了一个非常长的堆栈跟踪,由于超出了允许的字符数,我无法复制全部内容。

===================== 5/31/2018 3:40:57 PM LimitedFunctionality System.AggregateException: 项目系统数据流 'ProjectBuildSnapshotService Outer 320459' 因异常而关闭:System.AggregateException: 发生一个或多个错误。---> System.AggregateException: 发生一个或多个错误。---> System.AggregateException: 发生一个或多个错误。---> System.AggregateException: 发生一个或多个错误。---> System.NullReferenceException: 对象引用未设置为对象的实例。在 Microsoft.VisualStudio.ProjectServices.DesignTimeBuilder.d__17.MoveNext() 结束堆栈跟踪从先前引发异常的位置 --- 在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)、System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)、Microsoft.VisualStudio.ProjectSystem.Build.DesignTimeBuilderService.BuilderLifetimeHelper.d__12.MoveNext() 中结束堆栈跟踪从先前引发异常的位置 --- 在 System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)、System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)、Microsoft.VisualStudio.ProjectSystem.Build.DesignTimeBuilderService.d__36.MoveNext() 中结束堆栈跟踪从先前引发异常的位置 --- 在 Microsoft.VisualStudio.ProjectSystem.Build.DesignTimeBuilderService.d__36.MoveNext()、System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)、System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 中结束堆栈跟踪从先前引发异常的位置 --- 在 Microsoft.VisualStudio.ProjectSystem.Designers.ProjectBuildSnapshotService.d__74.MoveNext()、System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)、System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 中结束堆栈跟踪从先前引发异常的位置 --- 在 Microsoft.VisualStudio.Threading.JoinableTask.d__78.MoveNext()、Microsoft.VisualStudio.ProjectSystem.Designers.ProjectBuildSnapshotService.<UpdateSnapshotCoreAsync>d__72.MoveNext()、Microsoft.VisualStudio.ProjectSystem.Designers.CustomizableBlockSubscriberBase3.d__34.MoveNext()、Microsoft.VisualStudio.ProjectSystem.Designers.CustomizableBlockSubscriberBase3.<>c__DisplayClass32_0.<<Initialize>b__1>d.MoveNext()、Microsoft.VisualStudio.ProjectSystem.DataflowExtensions.<>c__DisplayClass24_0`2.<b__0>d.MoveNext()

你移动了这个项目吗?例如,我在所有使用VS Community 2015制作的应用程序中都遇到了这个错误,并更换为VS Community 2017。我认为这与框架和位置有关。从堆栈跟踪文件中看到的是应用程序的某些部分已被移动。可能是一个VS的bug。 - Halonic
我刚刚检查了在VS Enterprise中制作的应用程序,并在VS Community 2017中打开它们,同样的事情也发生在我身上。 - Halonic
3个回答

35

我发现你需要执行两个步骤来解决这个问题:

  1. 在解决方案级别删除 .vs 文件夹。
  2. 在解决方案内的所有项目中删除 binobj 文件夹。

我在 Visual Studio 2017 v15.7.4 中遇到了这个问题,受影响的项目/解决方案是在 v15.7.4 中创建的,因此它可能会在不升级到新版本的 Visual Studio 的情况下发生。


8
删除“.vs”文件夹解决了我的问题。不需要删除“bin”和“obj”文件夹。 - Aaron Hudon
我也是。删除.vs文件夹解决了我的问题。 - I Stand With Israel
仅删除.vs文件夹并没有帮助。我还必须删除binobj文件夹。Visual Studio 2017版本15.7.1 - 我在F#项目中遇到了这个问题,但从未在C#中遇到过。 - gdyrrahitis

2
尝试删除该解决方案中所有项目的bin和obj文件夹。

可能这些文件夹包含由较旧版本的Visual Studio生成的旧文件,这些文件与新版本的Visual Studio不兼容。

删除 bin 文件夹解决了问题,该问题是在使用 Visual Studio 回滚到旧提交时发生的。 - Yahya Hussein

0
我想分享一个shell脚本,可以递归地从当前目录中删除binobj目录。
通过git bashwsl导航到您的解决方案的根目录。
运行:
find . -type d \( -name bin -o -name obj \) -exec rm -r "{}" \;

享受吧!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接