decimal GetDecimal (int i) { object value = GetValue (i); if (!(value is decimal)) { if (value is DBNull) throw new SqlNullValueException (); throw new InvalidCastException ("Type is " + value.GetType ().ToString ()); } return (decimal) value; }