EqualsByContent
public static bool EqualsByContent(this DataTable thisDataTable, DataTable otherDataTable) { // Compare row count. if (thisDataTable.Rows.Count != otherDataTable.Rows.Count) { return false; } // Compare column count. if (thisDataTable.Columns.Count != otherDataTable.Columns.Count) { return false; } // Compare data in each cell of each row. for (int i = 0; i < thisDataTable.Rows.Count; i++) { for (int j = 0; j < thisDataTable.Columns.Count; j++) { if (!thisDataTable.Rows[i][j].Equals(otherDataTable.Rows[i][j])) { return false; } } } // The two DataTables contain the same data. return true; }Example:
// Create two DataTable objects. var dataTable1 = new DataTable(); var dataTable2 = new DataTable(); // Create two columns in each DataTable. dataTable1.Columns.Add("Column1"); dataTable2.Columns.Add("Column1"); dataTable1.Columns.Add("Column2"); dataTable2.Columns.Add("Column2"); // Add one row to each DataTable. dataTable1.Rows.Add(new object[] { "Hello World", DateTime.Today }); dataTable2.Rows.Add(new object[] { "Hello World", DateTime.Today.AddYears(1) }); // Write results. // Expected result is false. Console.WriteLine(dataTable1.EqualsByContent(dataTable2));
Description
Checks if two DataTable objects have the same content.
Details
- Author: Jonas Butt
- Submitted on: 8/24/2008 1:26:10 AM
- Language: C#
- Type: System.Data.DataTable
- Views: 2769
Double click on the code to select all.