error datareader

02/10/2006 - 14:48 por Garanya | Informe spam
Buenas tardes.
Como ven tengo el siguiente error en la línea cometada con dicho error.
Probé también con Reader.GetValue(0).ToString.
Lo que pretendo es recorrer la tabla cogiendo los valores de los registros
para ir metiendolos en una matriz de controles aunque estoy frenado en esta
línea.

Gracias

DB2Connection cn = new DB2Connection("Database=SPA2003F;UserID=db2admin;
Password=password;Server2.17.100.1");
cn.Open();
DB2Command cmd = cn.CreateCommand();
cmd.CommandText = "select * from SPTE";
DB2DataReader Reader = cmd.ExecuteReader();
while (Reader.Read())

{
textBox1.Text = (Reader.GetValue(0));//No se puede
convertir explicitamentre el tipo oject en string. Ya existe una conversión
explicita (pruebe si le falta una conversion)


}

Reader.Close();
cn.Close(); cn.Dispose();

Preguntas similare

Leer las respuestas

#1 floyd303
02/10/2006 - 15:18 | Informe spam
Hola!

Que tipo de dato es el que estas leyendo de la base de dato??
Has probado lo siguiente?

textBox1.Text = Ctype(Reader.GetValue(0), String)

De todas formas lo mismo depende del tipo de dato de la columna de la
base de datos. Dinos cual qes para poder ayudarte mejor

Saludos
Roberto M. Oliva


Garanya ha escrito:

Buenas tardes.
Como ven tengo el siguiente error en la línea cometada con dicho error.
Probé también con Reader.GetValue(0).ToString.
Lo que pretendo es recorrer la tabla cogiendo los valores de los registros
para ir metiendolos en una matriz de controles aunque estoy frenado en esta
línea.

Gracias

DB2Connection cn = new DB2Connection("Database=SPA2003F;UserID=db2admin;
Password=password;Server2.17.100.1");
cn.Open();
DB2Command cmd = cn.CreateCommand();
cmd.CommandText = "select * from SPTE";
DB2DataReader Reader = cmd.ExecuteReader();
while (Reader.Read())

{
textBox1.Text = (Reader.GetValue(0));//No se puede
convertir explicitamentre el tipo oject en string. Ya existe una conversión
explicita (pruebe si le falta una conversion)


}

Reader.Close();
cn.Close(); cn.Dispose();
Respuesta Responder a este mensaje
#2 Octavio Hernandez
02/10/2006 - 15:35 | Informe spam
Hola,

Con Reader.GetValue(0).ToString() debió haber al menos compilado. A ver si
te faltaron los paréntesis en ToString().
Si el primer campo de la tabla SPTE es de cadena de caracteres, una
variante más eficiente es:

textBox1.Text = (string)(Reader.GetValue(0));

Slds - Octavio


"Garanya" escribió en el mensaje
news:
Buenas tardes.
Como ven tengo el siguiente error en la línea cometada con dicho error.
Probé también con Reader.GetValue(0).ToString.
Lo que pretendo es recorrer la tabla cogiendo los valores de los registros
para ir metiendolos en una matriz de controles aunque estoy frenado en
esta
línea.

Gracias

DB2Connection cn = new DB2Connection("Database=SPA2003F;UserID=db2admin;
Password=password;Server2.17.100.1");
cn.Open();
DB2Command cmd = cn.CreateCommand();
cmd.CommandText = "select * from SPTE";
DB2DataReader Reader = cmd.ExecuteReader();
while (Reader.Read())

{
textBox1.Text = (Reader.GetValue(0));//No se puede
convertir explicitamentre el tipo oject en string. Ya existe una
conversión
explicita (pruebe si le falta una conversion)


}

Reader.Close();
cn.Close(); cn.Dispose();
Respuesta Responder a este mensaje
#3 Tomeu
02/10/2006 - 18:12 | Informe spam
Ok, gracias.

Efectivamente me salte los () en ToString. Lo siento.
Ya que estamos, una preguntita mas, se puede especificar la columna por
nombre en lugar de por indice en .GetValue(0).
Como podria ser en VB recordset.field("nombrecampo")

Gracias y saludos.

Gracias a este foro cada vez veo mas cerca el poder aprender a programar en
c#.net

"Octavio Hernandez" escribió en el mensaje
news:
Hola,

Con Reader.GetValue(0).ToString() debió haber al menos compilado. A ver si
te faltaron los paréntesis en ToString().
Si el primer campo de la tabla SPTE es de cadena de caracteres, una
variante más eficiente es:

textBox1.Text = (string)(Reader.GetValue(0));

Slds - Octavio


"Garanya" escribió en el mensaje
news:
Buenas tardes.
Como ven tengo el siguiente error en la línea cometada con dicho error.
Probé también con Reader.GetValue(0).ToString.
Lo que pretendo es recorrer la tabla cogiendo los valores de los
registros
para ir metiendolos en una matriz de controles aunque estoy frenado en
esta
línea.

Gracias

DB2Connection cn = new DB2Connection("Database=SPA2003F;UserID=db2admin;
Password=password;Server2.17.100.1");
cn.Open();
DB2Command cmd = cn.CreateCommand();
cmd.CommandText = "select * from SPTE";
DB2DataReader Reader = cmd.ExecuteReader();
while (Reader.Read())

{
textBox1.Text = (Reader.GetValue(0));//No se puede
convertir explicitamentre el tipo oject en string. Ya existe una
conversión
explicita (pruebe si le falta una conversion)


}

Reader.Close();
cn.Close(); cn.Dispose();




Respuesta Responder a este mensaje
#4 floyd303
02/10/2006 - 18:26 | Informe spam
Hola!

Si que puedes hacerlo:

textBox1.Text = (string)(Reader["nombrecampo"]);

Esta vez no mezclo lenguajes y te estoy contestando con C# ;)

Saludos
Roberto M. Oliva


Tomeu ha escrito:

Ok, gracias.

Efectivamente me salte los () en ToString. Lo siento.
Ya que estamos, una preguntita mas, se puede especificar la columna por
nombre en lugar de por indice en .GetValue(0).
Como podria ser en VB recordset.field("nombrecampo")

Gracias y saludos.

Gracias a este foro cada vez veo mas cerca el poder aprender a programar en
c#.net

"Octavio Hernandez" escribió en el mensaje
news:
> Hola,
>
> Con Reader.GetValue(0).ToString() debió haber al menos compilado. A ver si
> te faltaron los paréntesis en ToString().
> Si el primer campo de la tabla SPTE es de cadena de caracteres, una
> variante más eficiente es:
>
> textBox1.Text = (string)(Reader.GetValue(0));
>
> Slds - Octavio
>
>
> "Garanya" escribió en el mensaje
> news:
>> Buenas tardes.
>> Como ven tengo el siguiente error en la línea cometada con dicho error.
>> Probé también con Reader.GetValue(0).ToString.
>> Lo que pretendo es recorrer la tabla cogiendo los valores de los
>> registros
>> para ir metiendolos en una matriz de controles aunque estoy frenado en
>> esta
>> línea.
>>
>> Gracias
>>
>> DB2Connection cn = new DB2Connection("Database=SPA2003F;UserID=db2admin;
>> Password=password;Server2.17.100.1");
>> cn.Open();
>> DB2Command cmd = cn.CreateCommand();
>> cmd.CommandText = "select * from SPTE";
>> DB2DataReader Reader = cmd.ExecuteReader();
>> while (Reader.Read())
>>
>> {
>> textBox1.Text = (Reader.GetValue(0));//No se puede
>> convertir explicitamentre el tipo oject en string. Ya existe una
>> conversión
>> explicita (pruebe si le falta una conversion)
>>
>>
>> }
>>
>> Reader.Close();
>> cn.Close(); cn.Dispose();
>
>
Respuesta Responder a este mensaje
#5 Tomeu
02/10/2006 - 22:57 | Informe spam
Gracias por todo.

escribió en el mensaje
news:

Hola!

Si que puedes hacerlo:

textBox1.Text = (string)(Reader["nombrecampo"]);

Esta vez no mezclo lenguajes y te estoy contestando con C# ;)

Saludos
Roberto M. Oliva


Tomeu ha escrito:

Ok, gracias.

Efectivamente me salte los () en ToString. Lo siento.
Ya que estamos, una preguntita mas, se puede especificar la columna por
nombre en lugar de por indice en .GetValue(0).
Como podria ser en VB recordset.field("nombrecampo")

Gracias y saludos.

Gracias a este foro cada vez veo mas cerca el poder aprender a programar
en
c#.net

"Octavio Hernandez" escribió en el mensaje
news:
> Hola,
>
> Con Reader.GetValue(0).ToString() debió haber al menos compilado. A ver
> si
> te faltaron los paréntesis en ToString().
> Si el primer campo de la tabla SPTE es de cadena de caracteres, una
> variante más eficiente es:
>
> textBox1.Text = (string)(Reader.GetValue(0));
>
> Slds - Octavio
>
>
> "Garanya" escribió en el mensaje
> news:
>> Buenas tardes.
>> Como ven tengo el siguiente error en la línea cometada con dicho error.
>> Probé también con Reader.GetValue(0).ToString.
>> Lo que pretendo es recorrer la tabla cogiendo los valores de los
>> registros
>> para ir metiendolos en una matriz de controles aunque estoy frenado en
>> esta
>> línea.
>>
>> Gracias
>>
>> DB2Connection cn = new
>> DB2Connection("Database=SPA2003F;UserID=db2admin;
>> Password=password;Server2.17.100.1");
>> cn.Open();
>> DB2Command cmd = cn.CreateCommand();
>> cmd.CommandText = "select * from SPTE";
>> DB2DataReader Reader = cmd.ExecuteReader();
>> while (Reader.Read())
>>
>> {
>> textBox1.Text = (Reader.GetValue(0));//No se puede
>> convertir explicitamentre el tipo oject en string. Ya existe una
>> conversión
>> explicita (pruebe si le falta una conversion)
>>
>>
>> }
>>
>> Reader.Close();
>> cn.Close(); cn.Dispose();
>
>
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida