Dot-Net
具有 DbContext 的模型優先,無法初始化新數據庫
我放棄。我發現了這個:http: //blogs.msdn.com/b/adonet/archive/2011/03/15/ef-4-1-model-amp-database-first-walkthrough.aspx 並認為,這很酷。所以我很快重新設計了我的模型,以充分利用兩個世界。
但是現在我的模型無法創建新數據庫(或將表添加到現有數據庫)。我收到此錯誤:
如果在 Code First 模式下使用,使用用於 Database First 和 Model First 開發的 T4 模板生成的程式碼可能無法正常工作。要繼續使用 Database First 或 Model First,請確保在執行應用程序的配置文件中指定了實體框架連接字元串。要使用從 Database First 或 Model First 生成的這些類,使用 Code First 添加使用屬性或 DbModelBuilder API 的任何其他配置,然後刪除引發此異常的程式碼。
在:
protected override void OnModelCreating(DbModelBuilder modelBuilder) { throw new UnintentionalCodeFirstException(); }這就是我的連接字元串:
<add name="ForumContextContainer" providerName="System.Data.SqlClient" connectionString="Data Source=.\SQLExpress; Initial Catalog=iForum; Integrated Security=True"/>筆記。後來我添加了初始目錄,以嘗試它是否可以工作,但它完全一樣。
這是錯誤的連接字元串。使用模型優先/數據庫優先 (EDMX) 後,您必須使用實體連接字元串來引用 .ssdl、.msl 和 .csdl 元數據文件。另請注意,從 EDMX 創建模型時,您必須在設計時創建數據庫 = 您必須生成 SQL 腳本並執行它來創建數據庫。