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