C# 两个列表之间的差异<;FileInfo>;
我可以使用一个奇特的LINQ查询返回一个C# 两个列表之间的差异<;FileInfo>;,c#,.net,linq,list,list-comparison,C#,.net,Linq,List,List Comparison,我可以使用一个奇特的LINQ查询返回一个列表,方法是将它传递给一个方法(List oldList,List newList),并查看这两个列表之间的区别吗 基本上,我希望获得添加到新列表中的所有文件的列表,这些文件在旧列表中不可用。给定文件信息的IEqualityComparer,如下所示: public class FileInfoEqualityComparer : IEqualityComparer<FileInfo> { public bool Equals(File
列表
,方法是将它传递给一个方法(List oldList,List newList
),并查看这两个列表之间的区别吗
基本上,我希望获得添加到新列表中的所有文件的列表,这些文件在旧列表中不可用。给定
文件信息的IEqualityComparer
,如下所示:
public class FileInfoEqualityComparer : IEqualityComparer<FileInfo>
{
public bool Equals(FileInfo x, FileInfo y)
{
return x.FullName.Equals(y.FullName);
}
public int GetHashCode(FileInfo obj)
{
return obj.FullName.GetHashCode();
}
}
要查找添加到newList
列表的项目,请使用以下代码:
var addedItems = newList.Except(oldList, new FileInfoEqualityComparer());
var addedItems = newList.Except(oldList, new FileInfoEqualityComparer());