如何使用Icriteria nhibernate执行连接
我正在MVC3中开发一个应用程序,使用nhibernate对数据库进行查询 我有两个模型。 业余爱好者 霍布斯尾巴 HobbyMaster类包含:如何使用Icriteria nhibernate执行连接,nhibernate,icriteria,Nhibernate,Icriteria,我正在MVC3中开发一个应用程序,使用nhibernate对数据库进行查询 我有两个模型。 业余爱好者 霍布斯尾巴 HobbyMaster类包含: HobbyId and other details HobbyDetaild HobbyMasters hobbymaster other detals Hobbydeail类包含: HobbyId and other details HobbyDetaild HobbyMasters hobbymaster other detals 现在,
HobbyId
and other details
HobbyDetaild
HobbyMasters hobbymaster
other detals
Hobbydeail类包含:
HobbyId
and other details
HobbyDetaild
HobbyMasters hobbymaster
other detals
现在,我想使用ICTERIA在两个表之间执行jon:
ICriteria criteria = session.CreateCriteria<HobbyDetail>()
.CreateAlias("HobbyMasters", "HobbyMasters")
.Add(Restrictions.EqProperty("HobbyMasters.HobbyId", "HobbyDetail.hobbymaster.HobbyId"));
但我得到一个错误,说不能解析Hobbydeail类的属性HobbyMaster
请帮助我您可以使用QueryOver,它是ICriteria上带有Lambda表达式的包装:
session.QueryOver<HobbyDetail>()
.Fetch(hobbyDetail => hobbyDetail.HobbyMasters).Eager
.TransformUsing(Transformers.DistinctRootEntity)
.List();
仅供参考,这个问题与MVC无关。我对HobbyDeatil的说法有一个错误,即不能在这个范围内声明,因为它会给出不同的含义,也会对Transformers.DistincTrotenty有一个错误