使用ef4
iam尝试将此sql转换为linq但无法
select s.IdSimcard ,s.Imei from dbo.SimCard s
where s.Imei not in (select distinct d.Imei from dbo.SimCard d inner join dbo.Configuracion c
on c.SinCard_IdSincard = d.IdSimcard
where c.Estado = 'Activo' )
到目前为止,我在linqpad的帮助下有了这个,我不能再使用linquer来激活代码了
(from s in SimCard where s.Imei.Contains( (from c in Configuracion
join d in SimCard on c.SinCard_IdSincard equals d.IdSimcard
where c.Estado == "Activo"
select new { d.Imei }).Distinct())
select new { s.IdSimcard, s.Imei })
我读过EF4中不支持的“不在”,什么是相同的?
我在linqpad中收到此错误
'string.Contains(字符串)' - 参数1:无法将'System.Linq.IQueryable'转换为'string'
答案 0 :(得分:1)
如果我理解您的问题,您可以使用Except(...)
扩展方法(在System.Linq命名空间中)而不是Not Contains(...)
。