gpt4 book ai didi

.net - 查找两个 .NET 数据表的交集

转载 作者:行者123 更新时间:2023-12-02 05:08:01 24 4
gpt4 key购买 nike

是否有一种相对简单的方法来获取.NET中两个DataTable的交集?

我可以想到明显的方法(我自己在 O(n^2) 中迭代两个表),但如果可用的话,我想要更优雅的东西。我怀疑可能存在一种我没有看到的智能方式。当然,可读性和可维护性很重要,所以我试图远离任何过于“圆滑”的东西。

有什么好的想法吗?

编辑:看起来 Bryan Watts 对于 3.5 有一个非常好的解决方案,但不幸的是我使用的是 .NET 2.0(我应该提到这一点。)

最佳答案

使用 .NET 3.5:

using System.Data;

public static class DataTableExtensions
{
public static IEnumerable<DataRow> Intersect(this DataTable table, DataTable other)
{
return table.AsEnumerable().Intersect(other.AsEnumerable());
}

public static IEnumerable<DataRow> Intersect(this DataTable table, DataTable other, IEqualityComparer<DataRow> comparer)
{
return table.AsEnumerable().Intersect(other.AsEnumerable(), comparer);
}
}

关于.net - 查找两个 .NET 数据表的交集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/485306/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com