System.Data.Common.SqlUdtStorage.CompareValueTo C# (CSharp) Method

CompareValueTo() public method

public CompareValueTo ( int recordNo1, object value ) : int
recordNo1 int
value object
return int
        public override int CompareValueTo(int recordNo1, object value)
        {
            if (DBNull.Value == value)
            {
                // it is not meaningful compare UDT with DBNull.Value
                value = _nullValue;
            }
            if (_implementsIComparable)
            {
                IComparable comparable = (IComparable)_values[recordNo1];
                return comparable.CompareTo(value);
            }
            else if (_nullValue == value)
            {
                INullable nullableValue = (INullable)_values[recordNo1];
                return nullableValue.IsNull ? 0 : 1; // left may be null, right is null
            }

            throw ExceptionBuilder.IComparableNotImplemented(_dataType.AssemblyQualifiedName);
        }