我正在研究一个遗留系统并引入了流利的 nHibernate,但最后一个映射我似乎无法开始工作。
代码:
public class Permit
{
public int PermitId { get; set; }
public char Discipline { get; set; }
public PermitDetails PermitDetails { get; set; }
}
public PermitDetails
{
public int PermitId { get; set; }
}
public class GasPermitDetails : PermitDetails
{
... permit details
}
public class ElectricalPermitDetails : PermitDetails
{
... permit details
}
架构:
*tblPermit*
PermitId, int
Discipline, char
.... some other columns
*tblGas*
PermitId, int
....gasDetails
*tblElectrical*
PermitId, int
....electrical details
如果tblPermit.Discipline是"G",我们需要把数据取出来tblGas。如果tblPermit.Discipline是"E",我们需要把数据取出来tblElectrical。我一直在试图弄清楚这一点,但到目前为止还没有任何运气。