2012-10-11 119 views
0

兩個實體的映射文件如下,我想爲兩個實體構建ont-to-many關係,但「one」實體的列不是關鍵列。因爲數據庫表無法更改,我可以有一個方法來建立它。請幫助我,thx。一對一一對多關係

<class name ="Sue" table="[Sue]"> 
    <id name="ID" column ="ID" type="Guid" /> 

    <property name="SueSmallType"> 
     <column name="SueSmallType" sql-type ="nvarchar(Max)" /> 
    </property> 

</class> 


<class name ="SueType" table="[SueType]"> 
    <id name="ID" column ="ID" type="Guid" /> 

    <property name="Code"> 
     <column name="Code" sql-type ="nvarchar(Max)" /> 
    </property> 

</class> 

例如建立了與「SueSmallType」和「代碼」的關係,我該怎麼做。

回答

1

property-ref在這種情況下是存在的,但是由於「SueSmallType」不是被引用對象的Id,所以會失去延遲性。

<class name ="Sue" table="[Sue]"> 
    <id name="ID" column ="ID" type="Guid" /> 

    <many-to-one name="SueType" column="SueSmallType" property-ref="Code"/> 
</class> 

<class name ="SueType" table="[SueType]"> 
    <id name="ID" column ="ID" type="Guid" /> 

    <property name="Code"> 
     <column name="Code" length="8000" /> 
    </property> 
</class> 

記在色丹門檻length屬性(8000例),它和設置SQLTYPE到數據庫長文本類型(爲nvarchar(最大),文本)

+0

感謝您的反饋同樣的效果 –