Localdb Attach Problem

在进行code first的迁移时,update-database后默认在App_data文件夹下会新建数据库,如果删除了在使用update-database命令会出现以下错误:

Cannot attach the file 'E:WebApiStudyApp_DataBooksAPIContext-20150419115728.mdf' as database 'BooksAPIContext-20150419115728'.

原因:虽然.mdf文件被删除了,但是在localdb中的引用还在。

解决方案:

1.在nuget控制台中运行以下命令:

     sqllocaldb.exe stop v11.0
     sqllocaldb.exe delete v11.0

其中 v11.0是实例名,来之组连接字符串

<connectionStrings>
    <add name="BooksAPIContext" connectionString="Data Source=(localdb)v11.0; Initial Catalog=BooksAPIContext-20150419115728; Integrated Security=True; MultipleActiveResultSets=True; AttachDbFilename=|DataDirectory|BooksAPIContext-20150419115728.mdf"
      providerName="System.Data.SqlClient" />
  </connectionStrings>

2.改变连接字符串的名字(生成的数据库的名字是连接字符串的名字)

   

3.使用sqlserver连上(localdb)V11.0 实例,删除这个数据库

之后再运行update-database命令就正常了。

原文:Localdb Attach Problem in Visual Studio 2013

原文地址:https://www.cnblogs.com/goodlucklzq/p/4438961.html