2014-09-24 176 views
0

正與EF 6.1與使用守則「第一次從數據庫」的方法將現有數據庫用作本文descibed項目http://msdn.microsoft.com/en-us/data/jj200620如何更新模型EF代碼第一「從數據庫代碼首先」

最初EF生成的模型類,後來其他一些類被添加到數據庫,現在我需要爲這些新表生成模型類。

請指導我如何做到這一點,而不是重新生成一切。而不是爲所有表生成模型類,是否有一種方法可以選擇表來生成使用相同方法的模型。

+0

我從來沒有找到一種方法。我發現用我想要的新表創建一個新模型比較容易,然後將這些類和'DBSet '聲明覆制到舊模型 – cost 2014-09-24 19:32:22

+0

[如何在使用Entity Framework 6.1使用Code First from Database之後同步模型和MVC 5?](http://stackoverflow.com/questions/22637350/how-to-synch-model-after-using-code-first-from-database-using-entity-framework-6) – 2016-08-10 02:14:03

回答

0

通過生成過程,並在生成過程中,它允許您選擇表格。只選擇較新的。

不是選擇所有表格,而是展開小三角形並選擇你所需要的。您還必須選擇任何從屬表,否則該過程將失敗。如果這些依賴表已經存在,只需刪除新代碼(不幸的是,對他們來說,沒有辦法避免產生)。

enter image description here

有這這裏列出一些技巧:Reverse engineering a subset of tables for Entity Framework

+0

你怎麼樣重用DbContext?當我嘗試這種方法時,它抱怨DbContext已經存在,所以我必須創建一個新名稱(DBContext2),創建它,並將DbContext2重命名爲DBContext。或者先刪除DbContext。 – Jack 2016-04-10 11:24:03

+0

我有同樣的問題。 – Tsukasa 2017-01-18 23:48:48

0

還有一個選項是直接刪除自動生成的從項目類,並再次產生他們。雖然遵循這種方法,但我們需要確保這一點,我們應該爲數據模型(從DbContext繼承的類名)提供與前一個相同的名稱。數據模型名稱在下面的snap中突出顯示。 Data Model Name