我有一个与NHibernate的asp.net mvc应用程序,我不知道如何解决一个问题来查询一些数据。我有这个疑问:无法解析属性(复杂属性)
// create query
var query = session.QueryOVer<Laudo>().Fetch(x => x.Equipament).Eager;
// add some filters
if (idEquipament.HasValue)
query = query.And(x => x.Equipament.Id == idEquipament.Value);
//I got the error here...
if (idCompany.HasValue)
query = query.And(x => x.Equipament.Company.Id == idCompany.Value);
当我尝试执行此查询,我已经得到了这个消息的异常: “无法解析属性:的Equipament.Company.Id:DomainModel.Laudo”
我能做些什么来解决这个问题? 谢谢
感谢:
这是通过使用扩展方法
Query
,在NHibernate.Linq
命名空间中实现的。我使用JoinAlias解决它。 – 2012-07-08 21:54:21只是一个问题,有没有什么方法可以只填写这个连接的一些属性,我的意思是......公司实体有20多个字段,而我只需要2个(Id和Name),有没有办法做到这一点?谢谢 – 2012-07-08 22:29:22
预测? http://www.nhforge.org/doc/nh/en/index.html#queryqueryover-projections – 2012-07-08 22:33:39