簡體   English   中英

我的數據庫在Visual Studio 2010中在哪里?

[英]Where is my database in Visual Studio 2010?

我正在使用Visual Studio 2010 Professional在(C#)ASP.NET MVC3中創建我的第一個項目,同時正在創建一個非常基本的博客系統。 在測試期間,我創建了一些表,現在我想在這些表上存儲不同的數據,但是我不斷收到此錯誤:

The model backing the 'CategoryContext' context has changed since the database was created. Either manually delete/update the database, or call Database.SetInitializer with an IDatabaseInitializer instance. For example, the DropCreateDatabaseIfModelChanges strategy will automatically delete and recreate the database, and optionally seed it with new data.

顯然,我需要更新數據庫中的表,但是找不到在哪里可以訪問表。 我可以使用CTRL + ALT + S打開Server Explorer,但那里沒有數據庫或表。

這是它的屏幕截圖:

屏幕截圖 http://img710.imageshack.us/img710/8944/screenshot001kd.png

我在哪里/如何找到和/或編輯實際的數據庫表?

謝謝。

好吧,這是我能為您做的最好的事情:

如果使用SQL Compact Edition,則應查看文件系統上的項目文件夾,並查找名為app_data的文件夾,並且其中應有一個數據庫。

或者,您可以打開web.config文件,然后查找“ ConnectionStrings”部分,然后查找數據庫的位置。

如果它在SQL Server Express中,則在“數據庫資源管理器”窗口中,單擊數據庫連接並創建到本地sql server express的連接。 您應該在數據庫列表中將其作為machinename \\ sqlexpress看到。

從您的錯誤中,我將猜測您正在使用Entity Framework的代碼優先方法。

發生的事情是,Entity Framework在本地sql Express安裝上為您創建了一個數據庫。 要查找實際的數據庫,請查看您的web.config文件,然后找到連接字符串部分,該部分將告訴您服務器和數據庫目錄。 您可以使用圖片中的服務器資源管理器面板中的數據連接區域,使我們的Visual Studio訪問數據庫。 或者,您可以使用Sql Server Management Studio執行相同的操作。

現在,出現錯誤的原因是因為Entity Framework根據您最初定義的實體創建了該數據庫。 進行更改后,數據庫不再與實體匹配,您將收到上面列出的錯誤。 解決方案是要么在找到數據庫后刪除數據庫,然后使自動魔術再次發生,要么您需要對代碼進行一些更改,以使每次更改方案時都不會自動生成數據庫。

我建議您瀏覽MSDN的ADO.NET實體框架4.1,並閱讀“代碼優先”的開發樣式。

祝您好運,希望對您有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM