我在努力轉換我寫入Linq的下列SQL查詢。我認爲我走在正確的軌道上,但我必須錯過一些東西。帶有雙重子查詢的Linq查詢
我得到現在的錯誤是:
System.Linq.IQueryable不包含定義。載
這是令人困惑的我,因爲它應該嗎?
SQL
select Users.*
from Users
where UserID in (select distinct(UserID)
from UserPermission
where SupplierID in (select SupplierID
from UserPermission
where UserID = 6))
LINQ
var Users = (from u in _db.Users
where (from up in _db.UserPermissions select up.UserID)
.Distinct()
.Contains((from up2 in _db.UserPermissions
where up2.UserID == 6
select up2.SupplierID))
select u);
編輯:我最終要回的SqlCommand對象,因爲這是我必須得到今天完成,不能浪費太多時間試圖找出如何以正確的方式與Linq和EF做到這一點。我討厭代碼的黑客:(
我做的。此查詢只是一個大型存儲庫中的一個 – mituw16
UserID和SupplierID是否屬於同一類型? –
同意Nathan – qamar