小编Nur*_*rul的帖子

使用Code-First更新数据库时出错:"数据库中已经有一个名为'something'的对象."

我正在使用Visual Studio 2015中的Code-First进行数据库迁移.在此过程中,我已完成迁移步骤,直到添加迁移.

添加迁移后,我添加了这行代码

Database.SetInitializer(New MigrateDatabaseToLatestVersion(Of DbContext1, Migrations.Configuration))
Run Code Online (Sandbox Code Playgroud)

在我的DbContext构造函数中设置数据库初始化程序,因为我以前错过了这一步.在那之后,我执行了

"Add-Migration initial -Force"
Run Code Online (Sandbox Code Playgroud)

在程序包管理器控制台中,因为我担心在添加迁移过程中需要此部分.然后,我直接执行

"Update-Database"
Run Code Online (Sandbox Code Playgroud)

问题是在我这样做之后,出现了一个错误

此操作需要连接到"主"数据库.无法创建与"主"数据库的连接,因为已打开原始数据库连接并且已从连接字符串中删除凭据.提供未打开的连接.

添加

重新启动计算机后,当我执行"更新数据库"时,上述错误不再出现.相反,出现了另一个错误:

数据库中已经有一个名为"something"的对象.

我看到了一个建议执行的答案线程

Add-Migration Initial -IgnoreChanges
Run Code Online (Sandbox Code Playgroud)

其次是

Update-Database -verbose
Run Code Online (Sandbox Code Playgroud)

我试过了两个但它仍然显示相同的错误.

vb.net ef-code-first sql-server-2012 asp.net-web-api visual-studio-2015

2
推荐指数
1
解决办法
6195
查看次数