2014-06-12 18 views
0

我想先學習使用C#和實體框架代碼的MVC 4。我創建了我的模型,創建了我的數據庫並使用種子數據填充它。我有一個ContextInitializer類,它將在每次測試時放下並創建數據庫。當我運行它時,我可以在我的網站上看到我的數據,我可以編輯,創建和刪除它。但我真的不知道它的存儲位置。找不到哪個數據庫用於實體框架的MVC 4

我已經看了看webconfig文件,看到的connectionString如下:

"Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-CCConsolidation-20140610143008;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnet-CCConsolidation-20140610143008.mdf" 

我登錄我的LocalDB並沒有看到該數據庫在所有。沒有任何錯誤。我試圖改變連接字符串,並指向我的數據庫在Windows Azure上,仍然無法在任何地方看到數據庫。我沒有在我的App_Data文件夾中看到mdf文件。

所以我的問題是2倍:

1)我的數據庫藏身?

2)如何在Windows Azure上部署它?它會像更改連接字符串一樣簡單嗎?我試過沒有成功。

請幫忙!

注:我看到在這個網站的幾個「相似」的問題,但答案指着我看一下,我做的webconfig。我已經追溯到我的本地數據庫,但它仍然無處可尋。

我指的是Where does ASP.NET MVC 4 stores accounts information?

我錯過了什麼問題?


更新我的連接字符串爲Windows Azure:

"Data Source=xxxx.database.windows.net;Initial Catalog=CCConsolidation;Integrated Security=False;Database=xxxx;User [email protected];Password=xxxxxx;Connect Timeout=15;Encrypt=False;TrustServerCertificate=False;AttachDBFilename=aspnet-CCConsolidation.mdf" 

有沒有人見過這個連接字符串的任何問題?我在Webconfig中使用它來替換SQL Express,但未創建數據庫。

+0

嘗試做在'AttachDBFilename'結束文本搜索?我不確定除此之外,但這是我想嘗試 – Jfabs

+0

這是aspnet-CCConsolidation-20140610143008; –

回答

3

的LocalDB是SQL Server 2012這是一個簡單的命令行執行一個新的功能(不服務),可以根據需要啓動和停止數據庫實例。這與您的應用程序的App_Data和舊的AttachFile無關。

您可以啓動,停止,刪除或創建使用命令行的情況下,例如:

SqlLocalDb create "MyInstance" 
SqlLocalDb start "MyInstance" 
SqlLocalDb info "MyInstance" 
SqlLocalDb stop "MyInstance" 
SqlLocalDb delete "MyInstance" 

如果你想連接到您的數據庫從SSMS,你需要指定以下DB:

(localdb)\MyInstance 

這個數據庫的優點是,您不需要安裝整個SQL Server實例,啓動和停止服務,創建登錄,授予權限等。

database files are inside your Windows user profile folder,並且該進程在您自己的憑據下運行,因此您不需要爲任何文件夾授予權限。

你可以的LocalDB得到大量的信息在這裏:Getting Started with SQL Server 2012 Express LocalDB

+0

太棒了!這解決了我的第一個難題。關於我的問題的第二部分,如果我不想使用SQL Express,是否就像更改連接字符串一樣簡單?我已經嘗試過,但沒有奏效。我更改了連接字符串以使用Windows Azure SQL Server(請參閱我的關於SQL windows Azure的連接字符串的更新),但我沒有看到創建的數據庫。我可以使用我的VS 2012從桌面連接到Azure,這意味着連接字符串本身沒有問題。 – user1205746

0

您的數據庫不是生活在SQL Server的本地實例(例如本地主機)上,而是似乎是隨應用程序一起啓動的SQL Server Express實例,數據庫存儲在aspnet-CCConsolidation-20140610143008.mdf中您網站的App_Data目錄。

您應該能夠通過雙擊來瀏覽數據存儲在Visual Studio中的mdf文件在解決方案資源管理器

+0

感謝您的回覆。我的App_Data是空的,讓我感到困惑。我可以使用VS管理工作室查看SQL Server Express的實例嗎?我有SQL Server 2012,如果我更改指向該實例的連接字符串,它會在那裏創建數據庫嗎?到目前爲止,我的嘗試沒有成功。我可能錯過了一些東西。 – user1205746