我目前有两个对象(相同类型),可以表示任何基本值,如字符串、整数、日期时间等。
var valueX = ...;
var valueY = ...;
目前我是按照字符串级别进行比较的,就像这样
var result = string.Compare(fieldValueX.ToString(), fieldValueY.ToString(), StringComparison.Ordinal);
但我需要按类型(如整数)进行比较。
int i = 0;
int j = 2;
i.CompareTo(j);
如果它们恰好是日期等类型,可以将它们作为日期处理等等。
object.Compare(x,y);
如何实现以相同的方式返回-1、0、1?
((IComparable)x).CompareTo(y)
。 - LeeObject.Equal
不起作用吗?它会返回一个bool
而不是一个int
。 - Hank