Entity framework 4 EF 4.0 Linq到Enity查询
大家好,我需要在Linq中将这个SQL查询复制到实体Entity framework 4 EF 4.0 Linq到Enity查询,entity-framework-4,linq-to-entities,Entity Framework 4,Linq To Entities,大家好,我需要在Linq中将这个SQL查询复制到实体 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 * 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;
假设订阅服务器具有引用用户实例的导航属性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,
};
是否有其他方法可以做到这一点,而不包括好奇您是否希望加载用户数据?SQL查询使用*加载它们。如果只需要没有用户日期的订户数据,可以删除Include。一旦需要,用户数据也可以延迟加载。我的意思是var query=from s in Subscribers join u in Users on s.UserId等于u.Id select new{…}