如何从列表<classname>获取项目不在列表<int>中使用LINQ </int> </classname>

时间:2015-01-13 19:50:16

标签: c# linq list

我有两个清单

  1. List<ObjectData>
  2. List<int>
  3. ObjectData包含: - ID,Fname,LName

    List<int>包含ID。

    如何从List<ObjectData>获取List<int>以内的项目。

    List<int> lstPractitionerID = //get list 
        var lstfianl = lstPractitionerPC
                  .Select(a=>a.ID).ToList().Except(lstPractitionerID).ToList();
    

    但这只返回ID,我需要整个对象数据类

2 个答案:

答案 0 :(得分:6)

你可以使用带有lambda表达式的linq:

List<ObjectData> objDat;
List<int> integers;

objDat.Where(o=>!integers.Contains(o.ID));

答案 1 :(得分:2)

这可以让你得到你想要的东西:

 List<ObjectData> lObj = new List<ObjectData>();//Create your ObjectData List here
 List<int> lInt = new List<int>();//Create your int List here
 List<ObjectData> resultList = lObj.Where(o => !lInt.Contains(o.ID)).ToList();