2010-05-17 108 views
0

的nHibernate映射文件

<property name="NetworkRunId" column="Network_Run_Id" /> 
<property name="StudyKey" column="Study_Key" insert="false" update="false" /> 
<property name="AnnualizationFactor" column="Annualization_Factor" /> 
<property name="CreateDate" column="Create_Date" /> 
<property name="ModifyDate" column="Modify_Date" /> 

<many-to-one name="StudyInfo" class="Study" lazy="false" cascade="save-update"> 
    <column name="Study_Key" /> 
</many-to-one> 

<many-to-one name="MemberInfo" 
      class="BusinessDataEntities.Domain.NetworkAdministration.VHAMemberCompany, BusinessDataEntities" 
      lazy="false"> 
    <column name="Member_ID" /> 
</many-to-one> 

<many-to-one name="NetworkRunStudyXrefInfo" 
      class="BusinessDataEntities.Domain.NetworkAdministration.NetworkRunStudyXref, BusinessDataEntities" 
      lazy="false"> 
    <column name="Network_Run_Id" /> 
</many-to-one> 

<join table="[HCO_Spend_Network_Run_Study]"> 
    <key column="HCO_Spend_Id" /> 
    <property name="NetworkRunId" column="Network_Run_Id" insert="false" update="false"/> 
</join> 

問題與

網絡運行ID在第一個表 不存在的,但我有一個連接是具有Network_Run_Id財產如何解決這個

回答

0

如果列NetworkRunId是您的主鍵,則將其與<id>元素。

<class ...> 
    <id name="NetworkRunId" column="Network_Run_Id"> 
     <generator class="identity"/> 
    </id> 
</class> 

至於生成器類,請選擇最適合您的底層數據庫引擎。

編輯#1

爲了映射many-to-many協會,你可能要採取的眼睛文檔有關Collection Mapping上。也許滾動到6.3將回答你的問題。

+0

<多到一個名稱= 「NetworkRunStudyXrefInfo」 類= 「BusinessDataEntities.Domain.NetworkAdministration.NetworkRunStudyXref,BusinessDataEntities」 懶= 「假」> <列名稱= 「Network_Run_Id」/> 在這段代碼中,我收到錯誤,表示Network_Run_Id不存在於表中,但它不存在,但在連接條件中,我將Network_Run_Id作爲屬性如何與其他表和列進行多對一名稱Network_Run_Id匹配 – bharat 2010-05-17 16:57:17

+0

請查看我的編輯鏈接到NH文檔。 – 2010-05-17 17:22:57