NHibernate返回null元素的集合
本文关键字:集合 元素 null 返回 NHibernate | 更新日期: 2023-09-27 18:01:47
我有一个问题与NHibernate (c#, MVC3)。我有两个相关的一对多表:Sources和Filters(一个Source to多个Filters)。
源映射:
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="Core" namespace="Core.Model">
<class name="Source" table="Sources">
<id name="Id">
<generator class="identity" />
</id>
... properties ...
<list name="Filters" cascade="all-delete-orphan" inverse="false">
<key column="SourceId" />
<index column="FilterIndex" />
<one-to-many class="Filter" />
</list>
</class>
</hibernate-mapping>
过滤器的映射:
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="Core" namespace="Core.Model">
<class name="Filter" table="Filters" abstract="true">
<id name="Id">
<generator class="identity" />
</id>
... properties ...
<many-to-one name="Source" column="SourceId" />
</class>
</hibernate-mapping>
所有工作
问题是,当我从数据库获得源记录:
Source source = session.Get<Source>(id);
我得到两个项目源的列表。过滤器= {null,过滤器}。我不明白列表怎么能包含null。
在表Filters中,只有一行的FilterIndex=1
文档指出,索引的索引列从0开始编号。