我想获得基于两个列表lstJobs和lstPraudits的字符串列表。我想获得在两个列表中都通用的PlanId。

这是我的代码-

List<string> result=reviewModel.lstJobs.Select(x=>x.planId.Contains(reviewModel.lstPraudits.Slect(y=>y.PlanId).toList()));


我在这里做错了。代码给出错误信息。

最佳答案

使用Enumerable.Intersect

List<string> result = reviewModel.lstJobs.Select(x=> x.PlanId)
   .Intersect(reviewModel.lstPraudits.Select(y=> y.PlanId))
   .ToList();



  我在这里做错了


您的方法是错误的,因为x.planId.Contains将搜索子字符串,并且您将列表传递给该方法。无论如何,这是错误的方法,因为您不想比较子字符串。

关于c# - 使用Lambda表达式比较两个列表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39205386/

10-12 15:27