2013-09-28 31 views
1

從歷史上看,我在我的應用程序中首先使用了數據庫。在我有一個基類和多個派生類的情況下,我最終在代碼中有很多'if'語句。如何使用E.F.數據庫優先進行子類化

我剛剛開始使用Code First,我注意到E.F.映射回派生類的關鍵是基類Sql表中的'Discriminator'字段。

我的問題是,關於我現在使用數據庫的一些現有應用程序,我該如何開始以真正的OO方式創建我的POCO類?我能否將這個Discriminator字段添加到數據庫表中,E.F.會爲我創建我的子類?我猜這是行不通的,因爲這對於E.F.來說沒有足夠的信息來知道哪些字段屬於哪個類。

所以也許問題變成了,有沒有辦法用數據庫首先實現多態性,還是必須先切換到代碼。如果是這種情況,是否有可能首先將數據庫首先轉換爲代碼,而不會丟失任何數據?

謝謝。

回答

相關問題