2013-01-20 152 views
2

我開始了一個項目,並使用實體框架5. 現在我創建了一個數據庫在我的SQL Server Express與所有表。 此外,我用流暢的映射創建了DbContext映射和SQL數據庫創建

有什麼更好的,流利的映射或.edmx映射文件?

數據庫現在在SQL Server上,但我還想支持SQL本地數據庫。

有沒有辦法告訴EF我想使用SQL本地數據庫?

我應該在安裝程序中運送整個數據庫還是在啓動應用程序時創建數據庫?我如何使用EF來創建數據庫(SQL服務器或SQL本地數據庫)?

每一個有用的幫助,將不勝感激。

+0

檢查http://stackoverflow.com/questions/9716372/is-localdb-supported-by-visual-studio-2010-in-entity-framework-5 – spajce

+0

@spajce:感謝迄今爲止。 –

+0

難道你不能簡單地通過你的app.config/web.config告訴哪個數據庫使用? – bas

回答

1

如果您使用EF5我會遠離edmx。 您可以使用Entity Framework Power Tools從數據庫反向設計您的模型。 比你可以使用數據註釋或流利的映射來定製你的模型。

如果您首先使用EF5代碼,它可以自動爲您創建數據庫(如果不存在),但在後續升級(它可以重新創建數據庫,但然後您將使用或您現有的數據)時不能很好地工作。您可以使用的選項是EF遷移,您可以在類似流利語言的語言中指定對數據庫所做的修改或在Visual Studio中使用數據庫項目,您可以將所有模式存儲在源代碼管理中,然後生成數據庫升級腳本之間的版本。

+0

謝謝。我試試:) –

+0

爲什麼我應該遠離edmx?如果我更新數據庫並再次對我的模型進行反向工程,那麼如果我的所有更改都被覆蓋,那該怎麼辦? –

+0

恩,那是我看過這篇文章後的印象http://thedatafarm.com/blog/data-access/code-first-and-dbcontext-are-now-ldquo-the-entity-framework-rdquo/看起來像edmx現在是二等公民。然而,其他的比較在這裏http://msdn.microsoft.com/en-us/magazine/hh148150.aspx他們建議,如果你更喜歡視覺設計師,並有現有的數據庫,然後數據庫優先可能是路要走。 –