2013-06-24 39 views
2

我需要你的幫助。Nhibernate - <join>和<bag>標籤在類映射

我映射我的類<Join>代碼,並要還加<bag>

類似:

<class name="Hilan.HilanNet.Common.Pension.ClassA,Hilan.HilanNet.Common" table="ClassA_VW"> 
    <cache usage="read-write"/> 
    <composite-id> 
     <key-property name="columnA" column="sqlColumnA"/> 
     <key-many-to-one name="columnB" column="sqlColumnB" class="Hilan.HilanNet.Common.Pension.ClassB, Hilan.HilanNet.Common" /> 
    </composite-id> 
    other properties 
    <join optional="true" table="AdditionalColumns_TB" inverse="false" > 
     <key> 
     <column name="columnA" /> 
     <column name="columnB"/> 
     </key> 
     <property name="propertyA" /> 
    </join> 
     here I want to add the bag 
    <bag 
      name="Details" 
      lazy="true" 
      inverse="true" 
      access="nosetter.camelcase-underscore" 
      table="Details_VW" cascade="all"> 
     <cache usage="read-only"/> 
     <key> 
     <column name="ColumnA" /> 
     <column name="ColumnB"/> 
     </key> 
     <property name="PrincipalId" /> 
    </bag> 
    </class> 

,但我得到一個錯誤 -

「在命名空間中的元素‘類’' urn:nhibernate-mapping-2.2'在命名空間中有無效的子元素'bag'

爲什麼不能這樣做?

謝謝!

+0

將nhibernate-mapping.xsd移動到Visual Studio的\ Xml \ Schemas \目錄中。您在輸入和自動完成時獲得語法檢查... –

回答

2

元素<join>需要是<class>中的最後一個元素。

<class name="Hilan.HilanNet.Common.Pension.ClassA,Hilan.HilanNet.Common" table="ClassA_VW"> 
<cache usage="read-write"/> 
<composite-id> 
    <key-property name="columnA" column="sqlColumnA"/> 
    <key-many-to-one name="columnB" column="sqlColumnB" class="Hilan.HilanNet.Common.Pension.ClassB, Hilan.HilanNet.Common" /> 
</composite-id> 
<bag 
     name="Details" 
     lazy="true" 
     inverse="true" 
     access="nosetter.camelcase-underscore" 
     table="Details_VW" cascade="all"> 
    <cache usage="read-only"/> 
    <key> 
    <column name="ColumnA" /> 
    <column name="ColumnB"/> 
    </key> 
    <property name="PrincipalId" /> 
</bag> 
<join optional="true" table="AdditionalColumns_TB" inverse="false" > 
    <key> 
    <column name="columnA" /> 
    <column name="columnB"/> 
    </key> 
    <property name="propertyA" /> 
</join> 
</class> 
相關問題