private Exception CheckTypeValueStatusValue(Type expectedType) { switch (this.StatusValue()) { case DBStatus.S_OK: case DBStatus.E_CANTCONVERTVALUE: case DBStatus.S_TRUNCATED: return(ODB.CantConvertValue()); case DBStatus.E_BADACCESSOR: return(ODB.BadAccessor()); case DBStatus.S_ISNULL: return(ADP.InvalidCast()); case DBStatus.E_SIGNMISMATCH: return(ODB.SignMismatch(expectedType)); case DBStatus.E_DATAOVERFLOW: return(ODB.DataOverflow(expectedType)); case DBStatus.E_CANTCREATE: return(ODB.CantCreate(expectedType)); case DBStatus.E_UNAVAILABLE: return(ODB.Unavailable(expectedType)); } return(ODB.UnexpectedStatusValue(this.StatusValue())); }