那可行。这是正常现象,因为第二个“ from”查询个人计算机的用户组,第三个“ from”询问个人计算机的应用程序组。而且我想这不会像T- sql那样产生交叉联接,因为条件已经在外键和关联中定义了。
但是我想这应该是内部联接所要的语法。
var query = from u in db.Users
join p in db.PCs on p.UserId == u.Id
join a in db.Apps on a.PCId == p.Id
select new
{
username = u.Name,
pcname = p.Name,
appname = a.Name
};