public short GetInt16(int i)
{
if ((i < 0) ||
(i > FieldCount))
throw new IndexOutOfRangeException(i.ToString(CultureInfo.InvariantCulture));
object o = _columnValues[i];
if (o == null)
throw new SqlNullValueException();
if (!(o is short))
throw new InvalidCastException();
return (short)o;
}