Overview: This article explains how to remove duplicate records from DataTable in C#. In SQL Server database if a table contains duplicate records then it is easy to select unique records by using DISTINCT built-in Ms-SQL function and get duplicate free rows. But when a Dot.NET c# DataTable contains duplicate records then, we have to do some extra work to get duplicate-free records in datatable.
In many blogs on similar articles, you find they use For loop, Dataview, Array List, and delete duplicate rows over looping, etc for removing duplicate rows.
Here I will show you a simple and much faster way, in this article, I create a function that gives unique records from a DataTable in C#.NET and returns a clean and duplicates-free record DataTable which will copy to new data table variable and get clean duplicate free distinct records.
Code-Behind:
On page load below written code will return distinct DataTable row records, i.e Remove duplicated rows.//*
protected void Page_Load(objectsender,EventArgse)
{
if(!IsPostBack)
{
DataTable getDistinctData = RemoveDuplicatesRecords(GetData());
}
}
private DataTable RemoveDuplicatesRecords(DataTable dt)
{
//Returns just 5 unique rows
varUniqueRows=dt.AsEnumerable().Distinct(DataRowComparer.Default);
DataTable dt2=UniqueRows.CopyToDataTable();
returndt2;
}
//*
This is our DataBinding method
//*
private static DataTable GetData()
{
//Assume this returns all rows although there are just 5 distinct rows.
SqlDataReader reader=null;
DataTable dt=newDataTable();
using(SqlConnection conn=newSqlConnection())
{
conn.ConnectionString=ConfigurationManager.ConnectionStrings["ConnStr2"].ConnectionString;
using(SqlCommand cmd=newSqlCommand())
{
cmd.CommandText="SELECT col1,col2 FROM tableName ORDER BY col1";
cmd.Connection=conn;
conn.Open();
reader=cmd.ExecuteReader();
dt.Load(reader);
conn.Close();
}
}
return dt;
}
//*
Yeah, we are done :)
Thank you for reading, pls keep visiting this blog and share this in your network. Also, I would love to hear your opinions down in the comments.
PS: If you found this content valuable and want to thank me? 👳 Buy Me a Coffee
Post Comment
Your email address will not be published. Required fields are marked *