c#mvc无法映射连接表的列

时间:2016-03-17 02:05:40

标签: c# asp.net-mvc linq

所以我在LINQ中使用GroupJoin。但问题是我无法从子表中映射或提取我的列。

var query = db.Table.GroupJoin(db.Table3.DefaultIfEmpty(), l => l.TableID, s => s.Table3ID, (l, s) => new { ll = l, ss = s });

然后我在这里有一些过滤器。然后iconcatenate下面的选择。

var result = query.Select(le => new ViewModel
        {
            TableID = le.ll.TableID,
            Tabble3Column= le.ss., /*this part is the error it does not show the columns of **Table3***/
        }).Distinct().ToList();

错误是我无法映射 Table3 的列。

谢谢。

1 个答案:

答案 0 :(得分:0)

好的,最后我在尝试了几种语法后3天修复了它。

我做的是,我在子表(表3)上添加了FirstOrDefault()

var query = db.Table.GroupJoin(db.Table3.DefaultIfEmpty(), l => l.TableID, s => s.Table3ID, (l, s) => new { ll = l, ss = s.FirstOrDefault() });

之后,我能够映射 Table3 的列。希望这会有助于其他人。