C# DataRow 比較
/// <summary> /// dataRow比較 /// </summary> /// <param name="drA"></param> /// <param name="drB"></param> /// <param name="columnNames">需要比較的列名稱</param> /// <returns></returns> public static bool DataRowCompare(DataRow drA, DataRow drB, string[] columnNames) { bool flag = false; //DataRow 中需要比較的列排序 ColumnSort(drA, columnNames); ColumnSort(drB, columnNames); foreach (DataColumn dcA in drA.Table.Columns) { if (columnNames.Contains(dcA.ColumnName)) { foreach (DataColumn dcB in drB.Table.Columns) { if (columnNames.Contains(dcB.ColumnName)) { if (dcB.ColumnName == dcA.ColumnName)//列名比較 { //型別比較 if (dcB.DataType != dcA.DataType) { flag = false; break; } //值比較 else if (CompareObject(drA[dcB.ColumnName], drB[dcB.ColumnName])) { flag = true; break; } } } } } } return flag; } /// <summary> /// 按照陣列中列名順序排序 /// </summary> /// <param name="drA"></param> /// <param name="columnNames">按照陣列中列名順序排序</param> public static void ColumnSort(DataRow drA, string[] columnNames) { //drA 排序 int i = 0; foreach (string columnName in columnNames) { if (drA.Table.Columns.Contains(columnName)) { drA.Table.Columns[columnName].SetOrdinal(i); i++; } } }
物件比較方法 CompareObject(object objA, object objB):
深拷貝部分程式碼:
C# 實體類序列化與反序列化一 (XmlSerializer)
C# 實體類序列化與反序列化二 (DataContractSerializer)
相關文章
- Go與C#的比較 - RedditGoC#
- C#比較dynamic和Dictionary效能C#
- c# ref out 區別 比較 彙總C#
- C#中各種Lock的速度比較C#
- 【C#】比較 Random 與 RandomNumberGenerator 生成隨機字串C#random隨機字串
- c# 敏捷2 ForEach ToDictionary ToLookup Except比較C#敏捷
- [C#] string 和 StringBuilder 的比較C#UI
- C#比較兩個字串的相似度【轉】C#字串
- c#中結構體和類的比較C#結構體
- C# 物件比較(值型別、引用型別)C#物件型別
- (轉貼) C++,C#,Java功能比較 (.NET) (C#) (C/C++)C++C#Java
- js 深比較和淺比較JS
- Python解惑:整數比較 is ==的比較Python
- 字串比較字串
- Integer比較
- C#中陣列Array、ArrayList、泛型List<T>的比較C#陣列泛型
- Oracle date 型別比較和String比較Oracle型別
- C# 實現一個基於值相等性比較的字典C#
- C# 雜湊表Hashtable與字典表Dictionary<K,V>的比較。C#
- 比較檔案是否相同,(比較MD5值)
- [C++] 自定義C++比較器比較大小C++
- Java 比較器Java
- PHP比較字串PHP字串
- JAVA字串比較Java字串
- js比較日期JS
- 列舉比較
- easyExcel & poi 比較Excel
- Integer的比較
- 常用 NoSQL 比較SQL
- Go和Python比較的話,哪個比較好?GoPython
- Python的內建比較函式cmp比較原理剖析Python函式
- C# Java之比較 (轉)C#Java
- TCP和UDP比較TCPUDP
- 有序佇列比較佇列
- VUE中diff比較Vue
- 併發模型比較模型
- Vue與React比較VueReact
- java比較日期大小Java