0

我有一个 LINQ to Entities 语句,它在 AlphaGroupID 上连接两个模型,如下所示:

IEnumerable<ICD.ViewModels.HomeSearchViewModel> ICDList = (from a in ICDUnitOfWork.AlphaGroups.Find()
                                                                       join e in ICDUnitOfWork.Alphas.Find()
                                                                       on a.AlphaGroupID equals e.AlphaGroupID)

我需要加入 AlphaGroupID 上的两个表,但我还需要所有 ICDUnitOfWork.AlphaGroups,无论它们在 ICDList 中是否有相应的 AlphaGroupID。我怎样才能做到这一点?

4

1 回答 1

1

使用join into(与GroupJoin相同):

var query = from a in ICDUnitOfWork.AlphaGroups.Find()
            join e in ICDUnitOfWork.Alphas.Find()
                   on a.AlphaGroupID equals e.AlphaGroupID into g
            select new { AlphaGroup = a, Alphas = g };

GroupJoin 产生分层结果 - 对于外部序列中的每个项目,将生成内部序列中相应项目的序列(序列可以为空)。

于 2012-11-08T23:36:41.233 回答