我使用ASP.NET MVC 5
创建了简单的Entity Framework 2
网页。完成并测试此应用程序后,我决定将其迁移到我朋友的计算机上。所以我用Visual Studio解决方案将整个文件夹复制到他的计算机上。
不幸的是,启动应用程序时会出现此错误:
无法创建文件[数据库路径],因为它已经存在。更改 文件名,然后重试该操作。 CREATE DATABASE失败了......
问题是我的朋友不想创建新数据库,他想使用我提供的这个特定数据库文件(DB.mdf
)。所以这个文件应该附加到LocalDB但不是。
连接字符串是:
<connectionStrings>
<add name="DefaultConnection"
connectionString="Data Source=(LocalDb)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\DB.mdf;Integrated Security=True"
providerName="System.Data.SqlClient" />
</connectionStrings>
如何解决此问题?
答案 0 :(得分:0)
确保DB.mdf位于应用程序App Data文件夹中,并在运行应用程序之前将其附加到本地db 手动。
如果EF没有看到附加到localdb的数据库名为“db”的数据库,它会尝试创建它,因为它想要创建的文件已经存在,所以它正在爆炸。它不够智能,无法查看文件,只知道为你附上它。
看来你是对的,一定是在沿线某处改变了。
我认为这可能会对你有所帮助。 How does one Attach to an MDF file created by Code First using Server Explorer