2013-03-22 59 views
0

讓我們想象一下這個類的結構:地圖列的值對象實例的類層次

abstract class A {} 

class B:A {} 
class C:A {} 
class D:A {} 


class Entity 
{ 
    A PropertyA { get; set; } 
} 

實體與NHibernate和PropertyA被持久化映射。

我的問題是:是否有可能在數據庫列中存儲PropertyA某種類型的ID?例如:

  • 如果PropertyA是B,則在數據庫存儲屬性-B
  • 如果PropertyA是C,則在數據庫存儲屬性-C
  • 如果PropertyA是d然後在數據庫存儲屬性-d

當我查詢數據庫和實體創建時,我想根據數據庫列中的值將PropertyA初始化爲B/C/D。可能嗎?

回答