Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用Icriteria nhibernate执行连接_Nhibernate_Icriteria - Fatal编程技术网

如何使用Icriteria nhibernate执行连接

如何使用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 现在,

我正在MVC3中开发一个应用程序,使用nhibernate对数据库进行查询

我有两个模型。 业余爱好者 霍布斯尾巴

HobbyMaster类包含:

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有一个错误