0
傢伙嗨,我需要在這個Linq的SQL查詢複製到實體EF 4.0 LINQ到Enity查詢
select * from Subscriber a
inner join User b on a.UserId = b.Id
where b.Username = 'Name'
可能有人可能會有幫助。
傢伙嗨,我需要在這個Linq的SQL查詢複製到實體EF 4.0 LINQ到Enity查詢
select * from Subscriber a
inner join User b on a.UserId = b.Id
where b.Username = 'Name'
可能有人可能會有幫助。
試試這個:
var query = from s in context.Subscribers.Include("User")
where s.User.Username == "Name"
select s;
這個假設Subscriber
具有參考用戶實例導航屬性User
。
如果婉使用連接(這是不需要的),你可以用這個內部聯接:
var query = from s in context.Subscribers
join u in context.Users on s.User.Id equals u.Id
where u.Username == "Name"
select new
{
Subscriber = s,
User = u
};
或這個左外連接:
var query = from s in context.Subscribers
join u in context.Users on s.User.Id equals u.Id into x
where u.Username == "Name"
from y in x.DefaultIfEmpty()
select new
{
Subscriber = s
User = y,
};
是否有另一種方式來做到那,沒有包括(只是好奇) – Joper 2011-05-15 14:14:24
你想'用戶'數據加載?你的SQL查詢使用加載它們的'*'。如果您只需要'Subscriber'數據,而不需要'User'日期,則可以移除'Include'。用戶數據也可以在需要時延遲加載。 – 2011-05-15 14:34:02
我的意思是這樣的** var query = from s in Subscriber join u in Users on s.UserId equals u.Id select new {...} ** – Joper 2011-05-16 11:13:18