nhibernate每个类层次结构的表,映射隐藏基类成员的派生类成员

nhibernate每个类层次结构的表,映射隐藏基类成员的派生类成员,nhibernate,nhibernate-mapping,Nhibernate,Nhibernate Mapping,休眠映射选项 下文备选案文1 无法在NHibernate的a/c上持久化,在xml中生成附加成员声明(索引超出范围错误) 选项2独立映射! Fetch操作错误,无法区分类型 <class name="BaseContainer" discriminator-value="0"> <discriminator column="ContainerType" type="int" /> <many-to-one name=

休眠映射选项 下文备选案文1 无法在NHibernate的a/c上持久化,在xml中生成附加成员声明(索引超出范围错误)


选项2独立映射! Fetch操作错误,无法区分类型

   <class name="BaseContainer" discriminator-value="0">

         <discriminator column="ContainerType" type="int" />

         <many-to-one name="Foo"
                      foreign-key="..."
                      class="FooBase"
                      column="FooId"
                      unique="true"/>

          <subclass name="DerivedContainer"  discriminator-value="1">

               <many-to-one name="Foo"
                            foreign-key="..."
                            class="FooDerived"
                            column="FooId"

                            unique="true"/>
          </subclass>

   </class>

卡住了,如果有任何指示,我将不胜感激,尽管我知道如果通过每个子类的表来完成,这很容易实现,但是有没有任何方法可以通过每个类的表层次结构来实现

   <class name="BaseContainer" discriminator-value="0">

         <discriminator column="ContainerType" type="int" />

         <many-to-one name="Foo"
                      foreign-key="..."
                      class="FooBase"
                      column="FooId"
                      unique="true"/>

          <subclass name="DerivedContainer"  discriminator-value="1">

               <many-to-one name="Foo"
                            foreign-key="..."
                            class="FooDerived"
                            column="FooId"

                            unique="true"/>
          </subclass>

   </class>
   <class name="BaseContainer" discriminator-value="0">

         <discriminator column="ContainerType" type="int" />

         <many-to-one name="Foo"
                      foreign-key="..."
                      class="FooBase"
                      column="FooId"
                      unique="true"/>

   </class>

   <class name="DerivedContainer"  discriminator-value="1">

        <many-to-one name="Foo"
                     foreign-key="..."
                     class="FooDerived"
                     column="FooId"
                     unique="true"/>

  </class>