ZKX's LAB

怎么读取DataTable某一列的值?然后用c#代码判断是否有重复数据?linq还是怎么做呢? c datatable 重复数据

2021-04-27知识6

DataTable判断某个字段是否有重复数据,数组去重复 /检查是否包含指定的值DataTable.Rows.Contains(object key);

DataTable判断是否有重复数据 1.DatatTable 某个字段是否重复DataTable dtTableDisinit=(DataTable)this.c1TrueDBGrid1.DataSource;DataView dv=new DataView(dtTableDisinit);if(dv.Count。dv.ToTable(true,\"PMD_SingProduct\").Rows.Count){Common.showMessageInfo(\"网格中存在重复的品番。return;}2.数组中去重复的数据和判断一个数组中是否有重复的数据string[]strSing=this.PM_CollectionGoods.Text.ToString().Trim().Split(',');string[]strDis=strSing.Distinct().ToArray();if(strSing.Length。strDis.Length){Common.showMessageInfo(\"数组中存在重复的数据\");return;}

C# 处理DataTable 重复数据 你可以用HashSet来存储已存在的行 检索速度会快很多 代码如下 不知道你的机子什么配置 我的机子Debug模式100000行数据 用了232毫秒using System;using System.Data;using System.Collections.Generic;using System.Diagnostics;namespace ConsoleApplication1{class Program{static void Main(string[]args){DataTable dataTable=new DataTable();dataTable.Columns.AddRange(new DataColumn[]{new DataColumn(\"A\"),new DataColumn(\"B\"),new DataColumn(\"C\"),new DataColumn(\"D\")});for(int i=0;i;i+){dataTable.Rows.Add(new object[]{ 0,0,\"ABCDEFGHIJKLMNOPQRSTUVWXYZ\"+i.ToString(),0 });dataTable.Rows.Add(new object[]{ 0,0,\"ABCDEFGHIJKLMNOPQRSTUVWXYZ\"+(50000-i).ToString(),0 });}Stopwatch stopwatch=new Stopwatch();stopwatch.Reset();stopwatch.Start();Console.WriteLine(\"DataTable行数:{0}\",dataTable.Rows.Count);HashSet<;string>;hash=new HashSet();NET 3.0以上使用Dictionary,int>;dic=new Dictionary,int>;();NET 2.0可以用这个7a686964616fe78988e69d8331333332616533for(int i=0;i;i+){if(dic.ContainsKey(dataTable.Rows[i。

随机阅读

qrcode
访问手机版