IDataReader getInt returns wrong value
Posted: Thu 19 May 2005 14:10
In order to make my code more generic, I want to use IDataReader instead of PgSqlDataReader:
private DataTable PopulateDataTable(IDataReader drdrDB)
{
DataTable dtblResults = this.MakeDataTable();
while(drdrDB.Read())
{
dtblResults.Rows.Add(new Object[] {drdrDB.GetInt32(0), drdrDB.GetString(1), drdrDB.GetInt32(2)});
}
return dtblResults;
}
This works fine for the getString method but getInt32 returns wrong data (negative numers or 0). If I replace the parameter type definition IDataReader by PgSqlDataReader everything works fine. What's wrong here?
Thanks,
kolya
private DataTable PopulateDataTable(IDataReader drdrDB)
{
DataTable dtblResults = this.MakeDataTable();
while(drdrDB.Read())
{
dtblResults.Rows.Add(new Object[] {drdrDB.GetInt32(0), drdrDB.GetString(1), drdrDB.GetInt32(2)});
}
return dtblResults;
}
This works fine for the getString method but getInt32 returns wrong data (negative numers or 0). If I replace the parameter type definition IDataReader by PgSqlDataReader everything works fine. What's wrong here?
Thanks,
kolya