#region 引用对象比较 ////// 引用对象比较 /// /// /// ///public static bool CompareObject(object objA, object objB) { bool flag = false; if (objA == null || objB == null) { flag = false; } else if (objA == DBNull.Value && objB != DBNull.Value) { flag = false; } else if (objA != DBNull.Value && objB == DBNull.Value) { flag = false; } else if (objA == DBNull.Value && objB == DBNull.Value) { //objA objB 对应的列类型已经比较过 类型已判断 值一致 flag = true; } else if (objA.GetType() != objB.GetType()) { flag = false; } else if (objA is int || objA is short || objA is long || objA is float || objA is double || objA is decimal) { //int 01与1 if (objA is int) { if ((int)objA == (int)objB) { flag = true; } } else if (objA is short) { if ((short)objA == (short)objB) { flag = true; } } else if (objA is long) { if ((long)objA == (long)objB) { flag = true; } } else if (objA is float) { if ((float)objA == (float)objB) { flag = true; } } else if (objA is double) { if ((double)objA == (double)objB) { flag = true; } } else if (objA is decimal) { if ((decimal)objA == (decimal)objB) { flag = true; } } } else { string strA = MetadataXmlSerializer ログイン後にコピー
ちょっとした注意:
渡された 2 つの値が dataRow 内のセルの値である場合は、まず型を比較してから、次の場合にこのメソッドを呼び出してください。型は一貫しています
deep コードの一部をコピーします:
C# エンティティ クラスのシリアル化と逆シリアル化 1 (XmlSerializer)
C# エンティティ クラスのシリアル化と逆シリアル化 2 (DataContractSerialize)r)
上記は C# オブジェクトの比較 (値型、参照型) の内容です。さらに関連する内容については、PHP 中国語 Web サイト (m.sbmmt.com) を参照してください。