【问题标题】:Visual Studio 2015 crashing each time I run Update-Database每次运行 Update-Database 时,Visual Studio 2015 都会崩溃
【发布时间】:2015-11-29 18:52:24
【问题描述】:

每次我从包管理器控制台运行 Update-Database 时,Visual Studio 2015 都会崩溃。当时它恰好正在运行我的迁移 Configuration.Seed 方法。知道我应该去哪里看看发生了什么吗?

【问题讨论】:

标签: entity-framework ef-code-first entity-framework-6 visual-studio-2015 entity-framework-migrations


【解决方案1】:

崩溃很可能是由项目代码引起的,而不是 Visual Studio 的内部工作引起的。

作为suggested by m_david in a question linked by the OP,第一步是在Seed()¹开头添加如下代码:

if (System.Diagnostics.Debugger.IsAttached == false)
{
    System.Diagnostics.Debugger.Launch();
}

这将导致出现提示²,询问是在 Visual Studio 的新实例中还是在另一个当前正在运行的实例中启动调试器。

之后,调试器的输出将被记录到该 VS 实例的 Debug 输出中,未处理的异常将被视为断点 - 突出显示有问题的代码行、异常详细信息等.

在我的情况下,崩溃是由其中一个实体的成员中的递归 set() 操作引起的,这导致了 StackOverflowException


¹ 或者你的DbMigrationsConfiguration 子类的构造函数,如果崩溃发生得更早的话。或者可能是其他地方。

²因此,请记住在不需要时将代码注释掉。

【讨论】:

  • 谢谢,这真的很有帮助!该问题是我添加到其中一个表中的新列中的验证问题。在我添加此代码之前它没有显示。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-08-14
  • 2023-03-27
  • 1970-01-01
  • 2015-09-10
相关资源
最近更新 更多