zoukankan      html  css  js  c++  java
  • 使用Linq判断DataTable数据是否重复

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

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

     
    1. var query = from e in dt.Rows.Cast<DataRow>()  
    2.                     group e by new { sapCode = e.Field<string>("SAPComCode"), sapsupplierCode = e.Field<string>("SapSupplierCode") } into g  
    3.                     select new { sapComCode = g.Key, count = g.Count() };  
    4.         var items = query.Where(A => A.count > 1);  
    5.         if (items.Count() > 0)//存在重复数据  
    6.         {  
    7.             string SameSapComCode = string.Empty;  
    8.             foreach (var item in items)  
    9.             {  
    10.                 SameSapComCode += item.sapComCode + ";";  
    11.             }  
    12.             SameSapComCode = SameSapComCode.TrimEnd(';');  
    13.             result.Data = "以下SAP公司编号的数据存在重复,请检查后重新导入<br/>" + SameSapComCode;  
    14.             return result;  
    15.         }  
     
     
  • 相关阅读:
    apt-clone安装与使用
    利用异或求(整数数组中,有2K+1个数,其中有2k个相同,找出不相同的那个数)
    运行程序,填写结果
    throw与throws的区别
    牛客网多线程程序执行结果选择题
    一个继承了抽象类的普通类的执行顺序
    int i=0;i=i++
    HashMap浅入理解
    &&和&、||和|的区别
    System.out.println()
  • 原文地址:https://www.cnblogs.com/soundcode/p/11158301.html
Copyright © 2011-2022 走看看