[已解决问题] 关于nhibernate的问题
提问时间: 2008-03-11 00:01
悬赏分:10 浏览:313 次
select * from

company left join company_name_hist

on company.Company_ID = company_name_hist.Company_ID

where company_name_hist.Co_Name like '111'
or
company.Co_Name like '111'
===
company 和 company_name_hist是one to many的
==
上面的语句用criteria如何玩,:-),各位玩nhibernate的大侠指导下
工作以来一直用存储过程,最近项目要用这个,实在是不会,厚脸皮地来提问了
提问者:阿布郎 - 初学一级
最佳答案
session.CreateCriteria(typeof(company), "cp")
.CreateCriteria("company_name_hist", "cph", JoinType.LeftOuterJoin)
.Add(Expression.Expression.Or(Expression.Like("cp.Co_Name", "111"), Expression.Like("cph.Co_Name", "111")))
.List();
注意第二个CreateCriteria中company_name_hist是company类型里面关联到company_name_hist表的属性名称,而不是表名称或者类型名称。 
2008/3/11 12:15:07 回答者:Klesh Wong


提问者对于答案的评价:谢谢klesh的好心帮助,大大地谢过,在广东不?俺请你吃饭,^_^
其它回答(1)
我想到的办法可以建视图, 这样对NH来讲就是单表查询了. 或者通过对象的级联关系查. DeepLoad
4个月前   回答者:沙加 - 老鸟四级
评论
   您需要登录以后才能回答!
我的问题    我要提问


快到期问题

> 问题排行榜

有不合适内容,建议去除