2014-05-02 138 views
0

在創建新的ASP.NET Web應用程序時,是否可以將IdentityUser更改爲使用SQL Server 2012數據庫而不是默認安裝的localdb?MVC遷移IdentityUser SQL Server 2012遷移

我有一個現有的SQL Server 2012數據庫,我想與MVC 5項目一起使用,我可以在Web配置中修改連接字符串,但是我得到錯誤「實體類型ApplicationUser不是當前環境的模型「。

我找不到任何對AspNetUsers的引用來替代我的用戶表。

我是否被迫修改現有的localdb並重寫我以前的數據庫以使用新的AspNet表結構,如果可以,那麼數據庫可以遷移並升級到SQL Server 2012?

任何援助將不勝感激:-)

回答

0

通過關閉的Visual Studio 2013和定位這是WebApplication1 \ App_Data文件中的LocalDB的路徑解決了這個,有兩個文件ASPNET,WebApplication1-20140430012043.mdf和ASPNET -WebApplication1-20140430012043_log.ldf位於該文件夾中。

我修改了WebApplication1 \ App_Data的安全權限,以便SQL Server 2012連接到它時沒有問題。

然後我打開Microsoft SQL Server Management Studio並繼續附加數據庫,一旦數據庫連接到實例,我就備份了數據庫。接下來,我刪除了數據庫並進行了恢復,這次根據項目重新命名數據庫並重新定位mdf和ldf文件。

我再開我的項目在Visual Studio 2013和修改的Web.config:

<connectionStrings> 
    <add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;AttachDbFilename=|DataDirectory|\aspnet-WebApplication1-20140430012043.mdf;Initial Catalog=aspnet-WebApplication1-20140430012043;Integrated Security=True" 
    providerName="System.Data.SqlClient" /> 
</connectionStrings> 

到:

<connectionStrings> 
    <add name="DefaultConnection" connectionString="Data Source=MYSERVER;Initial Catalog=WebApplication1;Integrated Security=True" providerName="System.Data.SqlClient" /> 

然的項目,一切都很好。

1

只要啓用此功能爲您的項目遷移(假設VS2013 - 新版本是不同的,並且不需要遷移的vNext啓用) 1.啓用的遷移 2.更新,數據庫-Script -SourceMigration:$ InitialDatabase

這將生成您需要的腳本。