Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/301.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Linq从一个列表中删除另一个列表中的项目 var returnUser=mailList.Where(A=>!suppressUsers.Any(C=>A.Email.Equals(C.Email))) .ToList();_C#_Linq_Compare - Fatal编程技术网

C# Linq从一个列表中删除另一个列表中的项目 var returnUser=mailList.Where(A=>!suppressUsers.Any(C=>A.Email.Equals(C.Email))) .ToList();

C# Linq从一个列表中删除另一个列表中的项目 var returnUser=mailList.Where(A=>!suppressUsers.Any(C=>A.Email.Equals(C.Email))) .ToList();,c#,linq,compare,C#,Linq,Compare,从上面的代码中,我想做的是从邮件列表中删除suppressUsers列表中的用户。这个代码正确吗?因为对于大量的数据集,我没有得到正确的答案这应该适用于您: var returnUser = mailList.Where(A => !suppressUsers.Any(C => A.Email.Equals(C.Email))) .ToList<User>(); 检查是

从上面的代码中,我想做的是从邮件列表中删除suppressUsers列表中的用户。这个代码正确吗?因为对于大量的数据集,我没有得到正确的答案

这应该适用于您:

var returnUser = mailList.Where(A => !suppressUsers.Any(C => A.Email.Equals(C.Email)))
                                                   .ToList<User>();

检查是否相等时,尝试Trim()和ToLower()。e、 g var returnUser=mailList.Where(A=>!suppressUsers.Any(C=>A.Email.Trim().ToLower().Equals(C.Email.Trim().ToLower())).ToList();这个问题缺少各种信息。什么类型的LINQ/数据库?什么是“不正确”?由于示例的原因,此答案的逻辑是可以接受的。但问题是如何删除可以通过Remove()完成的项。问题和提供的问题代码具有误导性。
var suppressusersarray = suppressUsers.select(x=>x.email).toArray();
var returnUser = mailList.Where(x=>     suppressuserarray.Contains(x.email)).ToList();
var result = mailist.except(returnuser);