我測試了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