Hi Chris Bordeman,
Its not possible to get the DBType via GetType(). You need to have a mapping
to get the relevent type. For eg,
private static Hashtable dbTypeTable;
private SqlDbType ConvertToDbType(Type t)
{
if(dbTypeTable == null)
{
dbTypeTable = new Hashtable();
dbTypeTable.Add(typeof(System.Boolean), SqlDbType.Bit);
dbTypeTable.Add(typeof(System.Int16), SqlDbType.SmallInt);
dbTypeTable.Add(typeof(System.Int32), SqlDbType.Int);
dbTypeTable.Add(typeof(System.Int64), SqlDbType.BigInt);
dbTypeTable.Add(typeof(System.Double), SqlDbType.Float);
dbTypeTable.Add(typeof(System.Decimal), SqlDbType.Decimal);
dbTypeTable.Add(typeof(System.String), SqlDbType.VarChar);
dbTypeTable.Add(typeof(System.DateTime), SqlDbType.DateTime);
dbTypeTable.Add(typeof(System.Byte[]), SqlDbType.VarBinary);
dbTypeTable.Add(typeof(System.Guid), SqlDbType.UniqueIdentifier);
}
SqlDbType dbtype;
try
{
dbtype = (SqlDbType)dbTypeTable[t];
}
catch
{
dbtype = SqlDbType.Variant;
}
return dbtype;
}
can be used to get the type.
Cheers,
Chester
Chris Bordeman said:
I have a DataColumn, want to derive the DbType. I can do column.GetType()
but that's a system type, not a db type. How do I convert it to the
corresponding type?
Thanks much!
Chris B.