Lambda除了展示位置

时间:2017-07-25 12:42:26

标签: c# lambda

我想返回LANS的列表,我想从列表中排除UserInformation.Globals.LANID

代码:

var LANlist = _context.CORP_MatrixPositionOLDWay
               .Where(x => x.ChildOrgLevel.StartsWith(ParentORG.ToString()))
               .Select(x => x.ChildLAN)
               .Except(UserInformation.Globals.LANID);

错误:

  

' IQueryable的'不包含'除了'

的定义

2 个答案:

答案 0 :(得分:3)

我认为您要排除此单ChildLAN,请使用Where

var LANlist = _context.CORP_MatrixPositionOLDWay
           .Where(x => x.ChildOrgLevel.StartsWith(ParentORG.ToString()))
           .Select(x => x.ChildLAN)
           .Where(lan => lan != UserInformation.Globals.LANID);

答案 1 :(得分:1)

你仍然可以使用Except实现它,只需传入一个IEnumerable:

var LANlist = _context.CORP_MatrixPositionOLDWay
           .Where(x => x.ChildOrgLevel.StartsWith(ParentORG.ToString()))
           .Select(x => x.ChildLAN)
           .Except(new[] { UserInformation.Globals.LANID });