【发布时间】:2015-06-07 10:50:27
【问题描述】:
我在 Oracle 中有两个表
Entity
----------
**EntityId** NUMBER(9), **EntityName** VARCHAR2
EntityLinks
--------------
**EntityLinkId** NUMBER(9),**ParentEntityId** NUMBER(9), **ChildEntityId** NUMBER(9)
Table EntityLinks 将存储各种实体之间的多对多关系。 ParentEntityId 和 ChildEntityId 与 Entity 具有外键关系。
我也有下面的实体类
public class Entity
{
public virtual int EntityId {get; set}
public virtual IList<Entity> ParentEntities {get; set}
public virtual IList<Entity> ChildEntities{get; set}
}
public class EntityLinks
{
public virtual int EntityLinkId {get; set}
public virtual Entity ParentEntityId {get; set}
public virtual Entity ChildEntityId {get; set}
}
这是两个类的映射:
public class EntityMap : ClassMap<Entity>
{
public EntityMap()
{
Table("Entity")
Id(x=>x.EntityId).GeneratedBy.Increment();
*---- How to map for ParentEntities and ChildEntites?----*
}
}
public class EntityLinksMap : ClassMap<Entity>
{
public EntityMap()
{
Table("Entity")
Id(x=>x.EntityId).GeneratedBy.Increment();
References(x=>x.ParentEntityId).Column("ParentEntityId");
References(x=>x.ChildEntityId).Column("ChildEntityId");
}
}
我的问题是我应该如何在 ParentEntities 和 ChildEntites 的实体类中进行映射,以便获得特定实体的父子列表?
【问题讨论】:
标签: nhibernate fluent-nhibernate mapping fluent-nhibernate-mapping