public override void ResetDbType()
{
switch (typeCode) {
case SqlTypeCode.Bit:
case SqlTypeCode.Boolean:
dbType = DbType.Boolean;
break;
case SqlTypeCode.TinyInt:
dbType = DbType.Byte;
break;
case SqlTypeCode.SmallInt:
dbType = DbType.Int16;
break;
case SqlTypeCode.Integer:
dbType = DbType.Int32;
break;
case SqlTypeCode.BigInt:
dbType = DbType.Int64;
break;
case SqlTypeCode.Real:
case SqlTypeCode.Float:
dbType = DbType.Single;
break;
case SqlTypeCode.Double:
dbType = DbType.Double;
break;
case SqlTypeCode.Decimal:
dbType = DbType.Decimal;
break;
case SqlTypeCode.Numeric:
dbType = DbType.VarNumeric;
break;
case SqlTypeCode.String:
case SqlTypeCode.VarChar:
case SqlTypeCode.Clob:
case SqlTypeCode.LongVarChar:
dbType = DbType.String;
break;
case SqlTypeCode.Char:
dbType = DbType.StringFixedLength;
break;
case SqlTypeCode.VarBinary:
case SqlTypeCode.Blob:
case SqlTypeCode.LongVarBinary:
dbType = DbType.Binary;
break;
case SqlTypeCode.DateTime:
dbType = DbType.DateTime;
break;
case SqlTypeCode.Date:
dbType = DbType.Date;
break;
case SqlTypeCode.TimeStamp:
dbType = DbType.DateTimeOffset;
break;
default:
throw new NotSupportedException(String.Format("The SQL Type '{0}' cannot be converted to DbType.", typeCode));
}
}