我填充了List<Object1>对象1包含2个字段(int id和string name)
我也是IEnumerable<Object2>由linq2sql生成的.带字段(id,name)
我需要从项目List<Object1>该标识的是不存在的IEnumerable<Object2>.通过Key Field = id
(比如sql中的位置..)
我用的代码就像
IEnumerable Object2
List<Object1> excepted = Object2.Where(t => obj1.Contains == t.Id);
Run Code Online (Sandbox Code Playgroud)
谢谢!
怎么样:
HashSet<string> knownIds = new HashSet<string>(list2.Select(x => x.Id));
var exceptions = list1.Where(x => !knownIds.Contains(x.Id));
Run Code Online (Sandbox Code Playgroud)
正如Earwicker正确地说的那样,这只会给出一个IEnumerable<Object1>- 如果你需要一个列表,将第二行更改为:
var exceptions = list1.Where(x => !knownIds.Contains(x.Id)).ToList();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3992 次 |
| 最近记录: |