我测试了NHibernate的3 CR,但无法使用LINQ创建以下SQL:NHibernate的3 LINQ的 - 内部连接
select *
from Users as {user}
inner join Test as test on test.UserId = user.Id
inner join Release as release on release.TestId = test.TestId
where Release.Status = 1
order by count(release.Status) desc;
我还没有走到这一步,我现在的代码是这样的,并给出我的东西完全不同:
var users = from user in Session.Query<User>()
join test in Session.Query<Test>() on user.Id equals test.User.Id
join release in Session.Query<Release>() on test.Id equals release.Test.Id
where release.Status == 1
orderby release.Status
descending
select user;
有没有关于如何使用linq内部连接的任何资源?我应该怎么做:
order by count(release.Status)
这是应该用QueryOver来完成吗?
为什么在查询中定义实体间的关系而不是在映射中? – Paco 2010-11-25 13:14:10
我只是在遗留应用程序上测试linq。所以这就是SQL的样子。我可以闻到映射的重写,但这里的要点是要看看Linq到底有多远进化了。它看起来不太可用。 – bondehagen 2010-11-26 09:42:27