18 messaggi dal 20 ottobre 2010
using (System.Data.EntityClient.EntityConnection conn = new System.Data.EntityClient.EntityConnection("name=CK_ALIMENTO"))
{
conn.Open();

System.Data.EntityClient.EntityCommand comm = conn.CreateCommand();
comm.CommandText = "select na.CF01_ID, na.CF01_NOME, na.CF01_GRUPPO from CK_ALIMENTO.CF01_ALIMENTO as na";
System.Data.EntityClient.EntityDataReader re = comm.ExecuteReader(System.Data.CommandBehavior.SequentialAccess);
while (re.Read())
{

a.id =(Int32)re["CF01_ID"];
}
re.Close();
}


QUI :
a.id =(Int32)re["CF01_ID"];
mi dà il seguente errore :Tentativo non valido di leggere dall'ordinale di colonna '0'. Con CommandBehavior.SequentialAccess è possibile leggere solo a partire dall'ordinale di colonna '1'.
Ma non riesco proprio a capire, anche perchè se prima dell'errore passo con il mouse sulla riga vedo il risultato.

MI SAPRESTE DIRE LA CAUSA?
Occhio ad usare il debugger perché interrogando l'oggetto già stai alterando l'accesso sequenziale ai campi. Se l'hai già letto, non puoi rileggero
Per essere sicuro, usa un bel re.GetInt32(0). Se ti dà errore, parti dall'indice 1; non ricordo se l'indice zero è riservato.

Ciao

Il mio blog
Homepage

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.