项目系统在尝试加载项目

时间:2018-05-31 12:50:08

标签: c# visual-studio visual-studio-2017

在Visual Studio 2017 v15.7.1中,我在尝试加载其中一个项目时收到以下错误窗口:

VS error window

当我进入指定的路径时,在测试文件中我发现了一个非常长的堆栈跟踪,我无法将其全部复制,因为它超出了允许的字符数。

  

===================== 5/31/2018 3:40:57 PM LimitedFunctionality System.AggregateException:项目系统数据流   ' ProjectBuildSnapshotService Outer 320459'关闭因为一个   exception:System.AggregateException:发生一个或多个错误。   ---> System.AggregateException:发生一个或多个错误。 ---> System.AggregateException:发生一个或多个错误。 --->   System.AggregateException:发生一个或多个错误。 --->   System.NullReferenceException:未将对象引用设置为实例   一个对象。在   Microsoft.VisualStudio.ProjectServices.DesignTimeBuilder.d__17.MoveNext()   ---从抛出异常的先前位置开始的堆栈跟踪结束--- at   System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务   任务)   System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务   任务)   Microsoft.VisualStudio.ProjectSystem.Build.DesignTimeBuilderService.BuilderLifetimeHelper.d__12.MoveNext()   ---从抛出异常的先前位置开始的堆栈跟踪结束--- at   System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务   任务)   System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务   任务)   Microsoft.VisualStudio.ProjectSystem.Build.DesignTimeBuilderService.d__36.MoveNext()   ---从抛出异常的先前位置开始的堆栈跟踪结束--- at   Microsoft.VisualStudio.ProjectSystem.Build.DesignTimeBuilderService.d__36.MoveNext()   ---从抛出异常的先前位置开始的堆栈跟踪结束--- at   System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务   任务)   System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务   任务)   System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(任务任务)
  在   Microsoft.VisualStudio.ProjectSystem.Build.DesignTimeBuildManagerService.d__55.MoveNext()   ---从抛出异常的先前位置开始的堆栈跟踪结束--- at   System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务   任务)   System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务   任务)   System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(任务任务)
  在   Microsoft.VisualStudio.ProjectSystem.Build.DesignTimeBuildManagerService.d__53.MoveNext()   ---从抛出异常的先前位置开始的堆栈跟踪结束--- at   System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务   任务)   System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务   任务)   Microsoft.VisualStudio.ProjectSystem.Designers.ProjectBuildSnapshotService.d__74.MoveNext()   ---从抛出异常的先前位置开始的堆栈跟踪结束--- at   System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务   任务)   System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务   任务)   System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(任务任务)
  在   Microsoft.VisualStudio.ProjectSystem.Designers.ProjectBuildSnapshotService&LT;&GT; c__DisplayClass72_0&LT; b__0&GT; d.MoveNext()   ---从抛出异常的先前位置开始的堆栈跟踪结束--- at   System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务   任务)   System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务   任务)   Microsoft.VisualStudio.Threading.JoinableTask.d__78.MoveNext()   ---从抛出异常的先前位置开始的堆栈跟踪结束--- at   System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务   任务)   System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务   任务)   Microsoft.VisualStudio.Threading.JoinableTask 1.<JoinAsync>d__3.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 Microsoft.VisualStudio.ProjectSystem.Designers.ProjectBuildSnapshotService.<UpdateSnapshotCoreAsync>d__72.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 System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)
at Microsoft.VisualStudio.ProjectSystem.Designers.CustomizableBlockSubscriberBase
3.d__34.MoveNext()   ---从抛出异常的先前位置开始的堆栈跟踪结束--- at   System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务   任务)   System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务   任务)   Microsoft.VisualStudio.ProjectSystem.Designers.CustomizableBlockSubscriberBase 3.<>c__DisplayClass32_0.<<Initialize>b__1>d.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 Microsoft.VisualStudio.Threading.JoinableTask.<JoinAsync>d__78.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 Microsoft.VisualStudio.ProjectSystem.Designers.CustomizableBlockSubscriberBase 3.&LT; b__32_0&GT; d.MoveNext()   ---从抛出异常的先前位置开始的堆栈跟踪结束--- at   System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务   任务)   System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务   任务)   Microsoft.VisualStudio.ProjectSystem.DataflowExtensions&LT;&GT; c__DisplayClass24_0`2&LT; b__0&GT; d.MoveNext()

3 个答案:

答案 0 :(得分:24)

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

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

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

答案 1 :(得分:2)

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

可能这些文件夹中有一些旧版本的Visual Studio生成的旧文件,这些文件与新版本的visual studio不兼容。

答案 2 :(得分:0)

我想共享一个Shell脚本,该脚本递归地从当前目录中删除binobj目录

通过git bashwsl导航到解决方案的根目录

运行

find . -type d \( -name bin -o -name obj \) -exec rm -r "{}" \;

享受!