Hier eine kleine Methode, mit welcher sich 2 Objekte miteinander vergleichen lassen:
public static bool CompareObjectValues<T>(T obj1, T obj2) where T : class
{
if (obj1.GetType() != obj2.GetType())
throw new ArgumentException("ungleiche Klassen können nicht verglichen werden");
FieldInfo[] lFields = obj1.GetType().GetFields(BindingFlags.NonPublic
| BindingFlags.Public | BindingFlags.Instance);
foreach (FieldInfo fi in lFields)
{
if (Convert.ToString(fi.GetValue(obj1)) != Convert.ToString(fi.GetValue(obj2)))
return false;
}
return true;
}