2012-11-27 128 views
0

我需要您的幫助!我正在Visual Studio 2010中工作,當試圖在EF CodeFirst的幫助下生成一個全新的SQLEXPRESS DB時,沒有任何錯誤,但沒有新的自動生成的數據庫。什麼可能是錯的?我正在寫數據模型類,然後添加一個DBContext類,然後編寫邏輯來創建一個新的DataBaseEntry,然後我開始調試並且沒有生成數據庫EF代碼首先不會創建新的數據庫

回答

0

EF-Code First中的數據庫會自動生成(no需要創建一個DatabaseEntry)當您第一次訪問數據(發送查詢之前不採取任何措施。)

您還可以通過從DropCreateDatabaseIfModelChanges或DropCreateDatabaseAlways繼承創建一個種子類(名字是自我解釋),和實施Seed方法。

則必須設置這個類作爲一個初始化:

Database.SetInitializer<MyContext>(new MySeedClass()) 

首次EF將試圖訪問你的數據庫,你的種子類將被命名(如需要)

這裏更多: http://www.codeguru.com/csharp/article.php/c19999/Understanding-Database-Initializers-in-Entity-Framework-Code-First.htm