2014-02-19 81 views
0

我不知道以下是否可能,但我想聽聽其他意見。代碼優先和現有的數據庫混合

我有一個現有的數據庫。我將只使用特定數量的表格和這些表格的某些列。爲此,我首先創建了類並在這些類和數據庫表之間創建了特定的映射。然後實現DbContext ...到目前爲止我沒有任何問題。

在項目的第二部分,有些類可能不存在於數據庫中。所以,當我運行項目,如果他們不存在我想實現這些,就像一個普通的codefirst實現,但我不應該觸及數據庫中的其他表。

有什麼想法?

最佳

回答

1
In the second part of the project there are classes which might not exist in the database. So when I run the project if they don't exist I want to implement those, like a normal code first implementation however I shouldn't touch other tables in the database 

使用忽略屬性在你的DbContext,覆蓋模型構建器屬性

modelBuilder.Entity<YourClass>().Ignore(); 

如果該類未在數據庫映射這不會妨礙你的數據庫。 希望這有助於。

+0

謝謝你的迴應。然而,Ignore()本身並不足夠。我需要這樣的東西:if(thisTableDoesNotExist)然後createTheTable – rkmorgan

+0

「如果(thisTableDoesNotExist)然後createTheTable」你可以很容易地實現是通過遷移。詳細信息請參閱http://msdn.microsoft.com/en-us/data/jj591621.aspx我希望這可以幫助。 ;) – MKMohanty

相關問題