我有一個乾淨的MVC 3項目和使用SqlCe會員提供安全帳戶。如何使asp.net成員提供商和實體框架共享相同的數據庫
當我連接字符串的成員提供和Entity Framework使用相同的「數據庫」中指定我會得到在EF的Code First模型的表未找到錯誤
<connectionStrings>
<add name="DefaultConnection" connectionString="Data Source=|DataDirectory|db.sdf" providerName="System.Data.SqlServerCE.4.0" />
<add name="SqlDbContext" connectionString="Data Source=|DataDirectory|db.sdf" providerName="System.Data.SqlServerCE.4.0" />
</connectionStrings>
但是如果我指定不同的數據庫名稱,然後我會完美工作 - 雖然它創建兩個獨立的SDF文件。以下連接字符串的工作原理:
<connectionStrings>
<add name="DefaultConnection" connectionString="Data Source=|DataDirectory|aspnet.sdf" providerName="System.Data.SqlServerCE.4.0" />
<add name="SqlDbContext" connectionString="Data Source=|DataDirectory|db.sdf" providerName="System.Data.SqlServerCE.4.0" />
</connectionStrings>
爲什麼它只在我指定兩個獨立的SDF表時才起作用?我怎樣才能爲會員供應商和ef模型使用單一的SDF數據庫?
你的EF手動創建數據庫表? –
不,我正在使用代碼第一種方法,以期望自動創建表 - 實際上這些表是使用第二個配置自動創建的 – Fixer