3
我有两个类子查询问题
由名称:人与资产
由关系型:一对多(一人由许多资产)
我写了一个查询通过使用子查询linq.Nhibernate 2.2
var sub_q = from Asset a in SessionInstance.Linq<Asset>()
select a.Person.Id;
var q = from Person p in SessionInstance.Linq<Person>()
where(sub_q.Contains(p.Id))
select p;
List<Person> list = q.ToList<Person>();
我看到在执行时间一个异常 例外的信息是:代码应该不可达
当然下面的查询是正确
var sub_q = from Asset a in SessionInstance.Linq<Asset>()
select a.Person.Id;
List<Person> personList = sub_qsub_q.ToList<Person>;
var q = from Person p in SessionInstance.Linq<Person>()
where (personList.Contains(p.Id))
select p;
List<Person> list = q.ToList<Person>();
但不适合性能
有为什么要使用NHibernate 2特别的理由。 x而不是3.x? 3.x中的LINQ提供程序比2.x中的更强大 –