0

我有一个 A 类,它有一个 B 类列表......所以,使用 QueryOver 我有:

ClassB lb = null;  
var result = session.QueryOver<ClassA>
        .JoinAlias(x => x.ListB, () => lb, JoinType.LeftOuterJoin)
        .Where(() => lb.Property == 1)
        .List<ClassA>();

如何使用 Nhibernate Query<> 做到这一点?

谢谢

保罗

4

1 回答 1

1

假设你想要做的是得到一个ClassA至少有一个ClassB的列表Property == 1

var result = session.Query<ClassA>()
                    .Where(a => a.ListB.Any(b => b.Property == 1))
                    .ToList();

不过,这不会是外部连接。您可以通过添加|| !a.ListB.Any().

于 2012-06-04T21:00:45.293 回答