简体   繁体   English

如何删除数据表中的重复项,它仅包含单列?

[英]How To Remove Duplicates in Datatable it contains single column only?

Here i upload one Notepad file in Datatable.it contains only phone numbers and doesnot contain any Headers.so i want to Remove the duplicates from My Datatable.it contains single column only. 在这里我在Datatable中上传了一个记事本文件。它仅包含电话号码,不包含任何Headers.so,因此我想从My Datatable.it中删除重复项,仅包含一列。 When i do this i get the result but one value will be Duplicated. 当我这样做时,我得到结果,但是一个值将被复制。

9988775566
9988556644
9966332200
9988775566

like this one value will get again.i want to get the Datatable with out Duplicates. 像这样一个值将再次获得。我想获取没有重复的数据表。 My Snippet is 我的片段是

public void duplicatesinnotepad(DataTable dt, string col)
    {
        ArrayList unique = new ArrayList();
        ArrayList duplicat = new ArrayList();
        foreach (DataRow de in dt.Rows)
        {
            if (unique.Contains(de[col]))
                duplicat.Add(de);
            else
                unique.Add(de[col]);
        }
        foreach (DataRow de in duplicat)
        {
            dt.Rows.Remove(de);  
        }


    }

Try this 尝试这个

using Linq To Get Distinct Elements 使用Linq获取不同的元素

        var list = (  
        from row in dt.AsEnumerable()  
        select row.Field<string>("contacts")).Distinct();

OR 要么

    var list = dt.AsEnumerable().
    GroupBy(item => item.Field<string>(dt.Columns["contacts"]));

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM