在NHibernate中是否有等效于Hibernate的@embeddable注释/实体框架的ComplexTypeConfiguration基类?
我知道1:1映射的可能性,但我正在寻找一种将值嵌入父实体表中的解决方案。
答案 0 :(得分:3)
基于Hibernate @embeddable属性的快速浏览,它基本上是一个可以在多个地方重用的组件。 NHibernate不支持这种开箱即用的功能,但您可以使用Fluent NHibernate's ComponentMap完成此操作:
Component(x => x.Address, m =>
{
m.Map(x => x.Number);
m.Map(x => x.Street);
m.Map(x => x.PostCode);
});
尽管您可以为列添加前缀以允许同一实体中的重复组件,但似乎ComponentMap没有足够的灵活性来覆盖列定义。 (例如,有人的HomeAddress和WorkAddress的ComponentMap。)