Ciao,
ok, ma non ho capito bene il tuo codice, perchè hai bisogno di usare una datatable per poi andare a rigenerarti un oggetto? non puoi fare tutto direttamente mentre leggi dal db?
Io non uso DataTable da un bel po' (e spero di usarli ancora meno in futuro...) perchè lavoro sempre ad oggetti, ad esempio quando devo leggere dei dati dal database faccio codice di questo tipo:
List<Oggetto> lista = new List<Oggetto>();
using(SqlConnection cn = new SqlConnection(...))
{
SqlCommand cmd = cn.CreateCommand();
cmd.CommandText = "SELECT ... FROM ...";
SqlDataReader rd = cmd.ExecuteReader();
while(rd.Read())
lista.Add(BuildObject(rd));
}
return lista;
dove BuildObject genera l'oggetto di quella classe, dai valori del db:
Oggetto BuildObject (SqlDataReader rd)
{
Oggetto o = new Oggetto();
o.Nome = Convert.ToString(rd["nome"]);
o.ID = Convert.ToInt32(rd["id"]);
...
return o;
}
il codice è C# ma è facilmente traducibile in vb.net...
Ciao.
Matteo Raumer
[MCAD .net, MVP Visual C#]
http://blogs.dotnethell.it/freeteo