C#NHibernate Joined-Subclass取得问题
|
我有以下映射的类:
<class name=\"Company\" table=\"Company\">
<id name=\"ID\" column=\"CompanyID\">
<generator class=\"native\"/>
</id>
<joined-subclass name=\"CompanyAccounting\" table=\"company_accounting\" lazy=\"true\">
<key column=\"CompanyID\"/>
</joined-subclass>
<joined-subclass name=\"CompanyCarbon\" table=\"company_carbon\" lazy=\"true\">
<key column=\"CompanyID\" />
</joined-subclass>
</class>
现在,以下测试失败:
var company = CompanyAdapter.Get<Company>(_session, 32);
Assert.IsNotNull(company);
var client = CompanyAdapter.Get<CompanyClient>(_session, 32);
Assert.IsNotNull(client);
但是以下成功:
var client = CompanyAdapter.Get<CompanyClient>(_session, 32);
Assert.IsNotNull(client);
var company = CompanyAdapter.Get<Company>(_session, 32);
Assert.IsNotNull(company);
第一次测试失败的原因是因为NHibernate将Company提取为CompanyAccounting,因为Company(32)既是会计公司又是客户,并且当我致电Session.Get后,它已将Company提取为CompanyAccounting,所以它不会返回数据库并检查是否存在CompanyClient的条目,并假设Company只能在子类上,是否有必要指定它可以从所有子类继承?
没有找到相关结果
已邀请:
1 个回复
莽缓逢
关系添加,这是这些类的主键。