Visual Studio 2017 v15.7.1で、プロジェクトの1つをロードしようとすると、次のエラーウィンドウが表示されます。
指定されたパスに移動すると、テストファイル内に非常に長いスタックトレースが見つかります。許可された文字数を超えているため、すべてのトレースをコピーできませんでした。
===================== 2018/5/31 3:40:57 PM LimitedFunctionality System.AggregateException:Project system data flow例外のため 'ProjectBuildSnapshotService Outer 320459'が閉じました:System.AggregateException:1つ以上のエラーが発生しました---> System.AggregateException:1つ以上のエラーが発生しました---> System.AggregateException:1つ以上のエラーが発生しました- -> System.AggregateException:1つ以上のエラーが発生しました---> System.NullReferenceException:オブジェクト参照がオブジェクトのインスタンスに設定されていませんMicrosoft.VisualStudio.ProjectServices.DesignTimeBuilder.d__17.MoveNext()--- End Microsoft.VisualStudio.ProjectSystem.BuildのSystem.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)のSystem.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)で、例外がスローされた以前の場所からのスタックトレースの例DesignTimeBuilderService.BuilderLifetimeHelper.d__12.MoveNext()---前のスタックトレースの終わり例外がスローされた場所--- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)at Microsoft.VisualStudio.ProjectSystem.Build.DesignTimeBuilderService.d__36。 MoveNext()---例外がスローされた前の場所からのスタックトレースの終わり--- at Microsoft.VisualStudio.ProjectSystem.Build.DesignTimeBuilderService.d__36.MoveNext()---例外がスローされた前の場所からのスタックトレースの終わり--- 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.Build.DesignTimeBuildManagerService.d__55.MoveNext()---例外がスローされた前の場所からのスタックトレースの終わり--- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)で
at Microsoft.VisualStudio.ProjectSystem.Build.DesignTimeBuildManagerService.d__53.MoveNext()---例外がスローされた以前の場所からのスタックトレースの終わり--- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)at Microsoft.VisualStudio.ProjectSystem.Designers.ProjectBuildSnapshotService.d__74.MoveNext()---例外がスローされた前の場所からのスタックトレースの終わり--- at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd(Task task)のSystem.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)のSystem.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at Microsoft.VisualStudio.ProjectSystem.Designers.ProjectBuildSnapshotService。<> c__DisplayClass72_0。<b__0> d.MoveNext()---例外がスローされた前の場所からのスタックトレースの終わり--- System.Runtimeで。 CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)at Microsoft.VisualStudio.Threading.JoinableTask.d__78.MoveNext()---例外があった前の場所からのスタックトレースの終わりスロー--- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)at 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)
_ 3.d__34.Move ---例外がスローされた前の場所からのスタックトレースの終わり--- at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDe Microsoft.VisualStudio.ProjectSystem.Designers.CustomizableBlockSubscriberBase
at Microsoft.VisualStudio.ProjectSystem.Designers.CustomizableBlockSubscriberBase3.<>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. <b__32_0> d.MoveNext()のbuggerNotification(タスクタスク)---例外がスローされた前の場所からのスタックトレースの終わり---システム。 System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)at Microsoft.VisualStudio.ProjectSystem.DataflowExtensions。<> c__DisplayClass24_0`2。<b__0> d.MoveNext()のRuntime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
この問題を解決するには、2つの手順を実行する必要があることがわかりました。
.vs
フォルダーを削除します。bin
およびobj
フォルダーを削除します。Visual Studio 2017 v15.7.4で問題が発生し、影響を受けるプロジェクト/ソリューションはv15.7.4で作成されたため、新しいバージョンのVisual Studioにアップグレードしなくても発生する可能性があります。
そのソリューションのすべてのプロジェクトでbinおよびobjフォルダーを削除してみてください。
おそらく、これらのフォルダには、古いバージョンのVisual Studioによって生成された古いファイルがあり、新しいバージョンのVisual Studioと互換性がありません。
現在のディレクトリからbin
およびobj
ディレクトリを再帰的に削除するシェルスクリプトを共有したい
git bash
またはwsl
を介してソリューションのルートディレクトリに移動します
走る
find . -type d \( -name bin -o -name obj \) -exec rm -r "{}" \;
楽しい!