public bool compareObjects() { bool inConflict = false; FieldInfo[] fields = AttributeWorker.RetrieveAllFields(ownerType); foreach (FieldInfo fi in fields) { Attribute at = Attribute.GetCustomAttribute(fi, typeof(ColumnAttribute)); if (at != null) { Conflict cf = compareFields(fi, object1, object2); if (cf != null) { inConflict = true; this.conflicts.Add(cf); } } } return(inConflict); }
public Conflict compareFields(FieldInfo fi, ISerializableObject o1, ISerializableObject o2) { Conflict conflict = null; Object v1 = fi.GetValue(object1); Object v2 = fi.GetValue(object2); if (v1 == null) { if (v2 != null) { conflict = new Conflict(ownerType, fi, v1, v2); } } else if (v2 == null) { conflict = new Conflict(ownerType, fi, v1, v2); } else if (!v1.Equals(v2)) { conflict = new Conflict(ownerType, fi, v1, v2); } return(conflict); }
public Conflict compareFields(FieldInfo fi, ISerializableObject o1, ISerializableObject o2) { Conflict conflict=null; Object v1 = fi.GetValue(object1); Object v2 = fi.GetValue(object2); if (v1 == null) { if (v2 != null) { conflict=new Conflict(ownerType, fi, v1, v2); } } else if (v2 == null) { conflict=new Conflict(ownerType, fi, v1, v2); } else if (!v1.Equals(v2)) { conflict=new Conflict(ownerType, fi, v1, v2); } return conflict; }