将linq lambda查询转换为列表时出错

本文关键字:列表 出错 转换 linq lambda 查询 | 更新日期: 2023-09-27 18:21:21

我正在尝试使用linq查询数据,我正在连接两个表,其中id==到第二个表的id。我收到一个异常错误,说

无法隐式转换类型'System.Collections.Generic.List<AnonymousType#1>'到'System.Collections.Generic.List<--db table here-->'。

var qry = context.Projects
                .Join(context.Members, p => p.ID, m => m.ID, (p, m) => new { p, m })
                .Where(u => u.m.ID == memId)
                .Select(b => new  { 
                     b.p.ProjName,
                     b.p.ProjDesc,
                     b.p.ProjectType, 
                     b.p.Tags
                });
 return qry.ToList();

将linq lambda查询转换为列表时出错

您正试图从方法返回匿名类型的列表,但返回类型可能类似于List<SomeType>

因此,您需要创建自己类型的对象,而不是创建匿名对象。

.Select(b => new  SomeType { 
                 // set properties here
            });