LINQ 左联接响应错误

本文关键字:响应 错误 LINQ | 更新日期: 2023-09-27 17:55:15

我需要使用 LINQ 进行左连接。

我正在使用以下代码:

 var query = (from Geral in listEstadosGeral
                     join Coberto in listEstadoCoberto
                         on Geral.Id equals Coberto.Id
                         into temp
                     from j in temp.DefaultIfEmpty()
                     select new Estado()
                     {
                         Sigla = Geral.Sigla,
                         Nome = Geral.Nome
                     }).ToList();

在listEstadoGeral中,我有27条记录,在listEstadoCoberto中,我有5条记录。

查询有 27 条记录。

这段代码有什么问题?

LINQ 左联接响应错误

如果要获取 listEstadosGeral 中存在的记录,而这些记录不在 listEstadoCoberto 中:

var result = listEstadosGeral.Where(p => !listEstadoCoberto.Any(p2 => p2.ID == p.ID)).ToList();
    var query = (from Geral in listEstadosGeral
                 join Coberto in listEstadoCoberto
                 on Geral.Id equals Coberto.Id                       
                 select new Estado()
                 {
                     Sigla = Geral.Sigla,
                     Nome = Geral.Nome
                 }).ToList();