Nhibernate 基础关系映射

多对一

<many-to-one name="OrderEntity" column="OrderID" class="MedicalSystem.Domain.Entities.Order" cascade="none" insert="false" update="false" not-found="ignore"/>
 
 
一对多
 
<set name="DrugDetailEntityList" table="T_DrugDetail">
<key column="DrugID" ></key>
<one-to-many class="MedicalSystem.Domain.Entities.DrugDetail"/>
</set>
 
 
一对一
 

Employee中

<one-to-one name=" person " class=" Person "  property-ref=" employeeID"  cascade="none" constrained="true"/>

Person中

<one-to-one name="employee" class="Employee"  property-ref="personID"  cascade="none" constrained="true"/>

两个类中必须都有相关的字段引用

多对多

在开发中经常遇到的用户(User)和角色(Role)的关系就是多对多的关系。一个用户可以拥有多个角色,同时一个角色又可以被很多的用户所拥有。那么在描述这两个对象之间的关系时就需要建立一个中间表User_Role来确立它们之间的关系。首先,需要在其中一个对象(例如,User)中配置一个多对多的关联

<set

        name="roles"

        table="User_Role"

        inverse="true"

        cascade="save-update"

        <key column="Id" />

        <many-to-many column="Role_Id" class="Role">

/set>

<set

        name="users"

        table="User_Role"

        cascade="save-update"

        <key column="Id" />

        <many-to-many column="User_Id" class="User">

/set>

Class:关联的目标类

Column:中间关联表中映射到关联目标表的关联字段


仅供参考

资料地址:https://www.cnblogs.com/zhangwei595806165/p/3552285.html

原文地址:https://www.cnblogs.com/cwmizlp/p/10731273.html