Localdb Attach Problem

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

Cannot attach the file 'E:\WebApiStudy\App_Data\BooksAPIContext-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

 

posted @ 2015-04-19 12:56  senki  阅读(310)  评论(0编辑  收藏  举报