void CompareSimpleType(object object1, object object2, string breadCrumb)
{
if (object2 == null) //This should never happen, null check happens one level up
throw new ArgumentNullException("object2");
var valOne = object1 as IComparable;
if (valOne == null) //This should never happen, null check happens one level up
throw new ArgumentNullException("object1");
if (valOne.CompareTo(object2) != 0)
{
Differences.Add(string.Format("object1{0} != object2{0} ({1},{2})", breadCrumb, object1, object2));
}
}