HQL始终返回空IList

时间:2012-02-13 12:02:47

标签: .net nhibernate nhibernate-mapping hql

我有这个问题:

IList<Table1_name> ries = session.CreateQuery("from Table1_name where param1 = '30001'").List<Table1_name>>();

string s = ries[0].foo[0].someAttribute;

在TABLE1和TABLE2之间是多对多的关联,TABLE3是一个联结表。 表示TABLE1和TABLE2的类包含:

Table1_name.cs:public virtual IList<Table2_name> foo { get; set; }

Table2_name.cs:public virtual IList<Table1_name> foo { get; set; }

问题是它总是返回一个EMPTY IList foo,尽管数据库中有数据。

NHibernate探查器的输出看起来是正确的:

SELECT 
...
p.someAttribute  as nazov5_0_,
...
FROM  TABLE3 r
left outer join TABLE2 p
 on r.id = p.id
WHERE  r.param1 = 30001 /* :p0 */
and ...[others conditions are also ok]

但显示行数是0.当我把它放在sql命令器中时,它会返回正确的数据!

我需要一些提示,在哪里寻找问题。是否可以由nhibernate映射中的任何错误引起?但是它没有返回任何映射异常..找到属性,其他一切都有效,只有这个IList的Count在每种情况下都是0 ..

0 个答案:

没有答案