public int CompareTo(object obj) { var typedObj = (BinaryFileMvcModel)obj; if (Name == null) { return(0); //if we are an empty object, we say it equals b/c then we do not override db value } var result = string.CompareOrdinal(Name, typedObj.Name); return(result != 0 ? result : BinaryContent.GetHashCode().CompareTo(typedObj.GetHashCode())); }