Hibernate / NHibernate:如何将子类作为超类的实例持久化

时间:2009-05-12 12:54:49

标签: c# nhibernate hibernate subclass

我想通过NHibernate保留两个类: - 猫,有一个名字和一个Id, - 小猫,它是Cat的子类(没有额外的公共财产)。

出于愚蠢的原因,我想知道是否可以只映射猫?因此,当我坚持使用Kitten时,它会被保存为Cat,当我重新加载它时,它将作为Cat加载。

其他限制:   - 尝试时,NHibernate崩溃了,因为它不知道Kitten。   - 但是我不想添加一个鉴别器值,因为我不希望Hibernate实例化Kitten子类。

非常感谢!

编辑: 我忘了用明确的ISession.Save(“猫”,小猫)写作。我的问题发生在级联保存期间。

1 个答案:

答案 0 :(得分:1)

老问题,我想我必须改用接口。