无法将文件“<>.mdf”附加为数据库“<>”

Cannot attach the file '<>.mdf' as database '<>'

我正在处理一个包含不同 DbContext 实现的项目。首先使用 EF 代码生成迁移:

Enable-Migrations -ContextTypeName <> -Force
Add-Migration <>_DB_v1.0
Update-Database -Verbose

更新总是尝试附加 *.mdf 文件,但本地从未生成任何文件,我正在远程 SQL 服务器(远程虚拟数据库)上工作 Update-Script 选项成功生成 SQL 文件并在 Db 上很好地执行,但我总是在执行新迁移之前执行上次更新时出错。

任何人都可以帮忙吗?

项目在 .net 4.6 中,并使用 EF 6.0。

抱歉,出于保密原因无法粘贴代码。我可以确保所有连接字符串,项目 conf。如此完美。

请确保 Db 中的迁移历史记录 table 与解决方案中的迁移文件相匹配。

我想你错过了一些迁移。

我找到错误原因: 1- 在 connectionStrings 定义

中明确指出 providerName="System.Data.SqlClient"

2- 执行迁移,指定 -ConnectionStringName,即使控制台中显示的名称似乎没问题。

添加迁移 DB_vX.x -ConnectionStringName XXX_Database 更新数据库-详细-脚本-ConnectionStringName XXX_Database