首页 新闻 会员 周边

请问下面的linq语句为什么不对?

0
[待解决问题]

var query = from a in _context.Set<SysLogOperating>()
join b in _context.Set<SysUser>() on a.Account equals b.UserName into g
from r in g.DefaultIfEmpty()
select new LogOperatingModel
{
Name = a.Name,
OperatingTime = a.OperatingTime,
NickName =r.Name
};
await query.ToListAsync();
为什么最后一句会报错?

天亦玄的主页 天亦玄 | 初学一级 | 园豆:32
提问于:2023-05-05 17:13
< >
分享
所有回答(4)
0

执行最后一句 await query.ToListAsync() 时才生成 SQL 语句

dudu | 园豆:30948 (高人七级) | 2023-05-05 17:18

这句报错了呀,怎么改

支持(0) 反对(0) 天亦玄 | 园豆:32 (初学一级) | 2023-05-05 17:28

@天亦玄: 具体报什么错误?

支持(0) 反对(0) dudu | 园豆:30948 (高人七级) | 2023-05-05 20:36
0

你这个是 left join 得写法 所以 r 可能为空 要用三目运算符判断下 r == null ? null : r.Name

huiyuanai709 | 园豆:487 (菜鸟二级) | 2023-05-05 17:33
0

报什么错!

tea2007 | 园豆:1 (初学一级) | 2023-05-07 19:31
0

NickName = r?.Name

LiveCoding | 园豆:497 (菜鸟二级) | 2023-05-11 13:49
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册