我有一个方法,它接受一个SQL字符串并从SQLite数据库返回一个DataTable对象。这很好用,但是当我查看DataTable中的DataColumns时,返回的DataType始终是“System.Object”。如何让它返回与SQLite匹配的相关DataType(例如,VARCHAR2 = System.String,BOOL = System.Boolean,....)。下面是我创建DataTable的代码。是否有一些额外的步骤,我可以得到,而无需硬编码适当的类型转换?
public DataTable GetDataTable
(
string sql
)
{
DataTable dt = new DataTable();
try
{
openConnection();
SQLiteCommand mycommand = new SQLiteCommand(m_cnn);
mycommand.CommandText = sql;
SQLiteDataReader reader = mycommand.ExecuteReader();
dt.Load(reader);
reader.Close();
closeConnection();
}
catch (Exception e)
{
throw new DatabaseException(DatabaseException.DatabaseExceptionTypes.GetDataTable,e);
}
return dt;
enter code here