TypechoJoeTheme

香草物语

统计
登录
用户名
密码
/
注册
用户名
邮箱
输入密码
确认密码

使用Linq判断DataTable数据是否重复

Laughing博主
2017-07-18
/
0 评论
/
1,153 阅读
/
146 个字
/
百度已收录
07/18
本文最后更新于2021年04月27日,已超过1241天没有更新。如果文章内容或图片资源失效,请留言反馈,我会及时处理,谢谢!

我们一般系统在导入数据的时候,一般都是通过NPOI将excel数据转换成DataTable,然后将DataTable导入到数据库。在数据导入的过程中,其实很重要的一部就是检查DataTable中的数据是否有重复的,如果存在重复的,我们需要识别出重复的数据。

在.net中,我们通过Rows属性的cast()方法,可以很方便的过滤出重复的数据,下面的代码即可实现

var query = from e in dt.Rows.Cast<DataRow>()  
                    group e by new { sapCode = e.Field<string>("SAPComCode"), sapsupplierCode = e.Field<string>("SapSupplierCode") } into g  
                    select new { sapComCode = g.Key, count = g.Count() };  
        var items = query.Where(A => A.count > 1);  
        if (items.Count() > 0)//存在重复数据  
        {  
            string SameSapComCode = string.Empty;  
            foreach (var item in items)  
            {  
                SameSapComCode += item.sapComCode + ";";  
            }  
            SameSapComCode = SameSapComCode.TrimEnd(';');  
            result.Data = "以下SAP公司编号的数据存在重复,请检查后重新导入<br/>" + SameSapComCode;  
            return result;  
        }
C#.Net
朗读
赞(0)
赞赏
感谢您的支持,我会继续努力哒!
版权属于:

香草物语

本文链接:

https://www.xiangcaowuyu.net/java/use-linq-to-determine-whether-the-datatable-data-is-repeated.html(转载时请注明本文出处及文章链接)

评论 (0)
  1. waytosky 闲逛
    MacOS · Google Chrome

    希望能用,以前的都停了

    2018-05-20 回复
  2. 阿斯顿发顺丰 小坐
    MacOS · Google Chrome

    造福于民的好东西,分享是最好的奉献

    2017-11-24 回复