nHibernate - IStatelessSession和FetchMany返回多个父记录

时间:2012-06-06 20:42:53

标签: nhibernate linq-to-nhibernate

我有以下linq声明:

var query = from p in session.Query<Parent>().FetchMany(x => x.Children)
            select p;

我最终为每个Child in Children提供了一个新的Parent对象。所以,如果我有5个孩子,我会得到5个独立但相同的父对象。这是预期的行为吗?如果我使用ISession,我会按预期得到1个父母。

2 个答案:

答案 0 :(得分:4)

这是预期的,因为无状态会话不跟踪对象;因此,每一行都会产生一个新实例。

答案 1 :(得分:1)

您是否曾尝试对查询进行Distinct调用?

var results = query.Distinct();