
正文
Nullable object must have a value
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
有一个linq查询,由inner join改成left join, 对于有空值,就会出现Nullable object must have a value 的错误.
原来的查询:
var qry =
from c in _context.CCC
join f in _context.FFF .Where(t=>t.IsActive==true)
on new { c.ProjectId, cat = c.Category } equals new { f.ProjectId, cat = f.Category }
where c.IsActive == true
select
new
{
c.Id,
f.category
}
left join, select的字段做null判断
var qry =
from c in _context.CCC
join f in _context.FFF .Where(t=>t.IsActive==true)
on new { c.ProjectId, cat = c.Category } equals new { f.ProjectId, cat = f.Category }
into temp
from tt in temp.DefaultIfEmpty()
where c.IsActive == true
select
new
{
c.Id,
category=(f==null)?'':f.category
}







