Problema

13/05/2005 - 13:09 por Juan Carlos | Informe spam
tengo un problema verdaderamente extraño he declarado mis variables asi:
dr as datarow
stv as string

lo que quiero hacer es esto
for each dr in dsdataset.tables("tabla").row
stv += "'"
stv += dr(0) 'aqui es el problema cuando llega aqui me sale error
stv += "'"
next

me " La conversión de la cadena "'" al tipo 'Double' no es válida." porque??
alguien me puede ayudar que debo hacer plz.

Preguntas similare

Leer las respuestas

#1 A.Poblacion
13/05/2005 - 13:27 | Informe spam
"Juan Carlos" wrote in message
news:
tengo un problema verdaderamente extraño he declarado mis variables asi:
dr as datarow
stv as string

lo que quiero hacer es esto
for each dr in dsdataset.tables("tabla").row
stv += "'"
stv += dr(0) 'aqui es el problema cuando llega aqui me sale error
stv += "'"
next

me " La conversión de la cadena "'" al tipo 'Double' no es válida."


porque??
alguien me puede ayudar que debo hacer plz.



En lugar de += utiliza &=.
El operador & convierte a string aquello que está concatenando. En cambio
el + solo concatena si son strings, pero los suma si son numéricos.
Respuesta Responder a este mensaje
#2 Tristan
13/05/2005 - 18:47 | Informe spam
O mejor todavía, convierte siempre al tipo que necesites, en este caso
string, sin depender de conversiones implícitas que entre otras cosas no
funcionan con Strict On:

Es decir, yo haria:

for each fila in dsdataset.tables("tabla").row
stv &= "'" & fila(0).ToString() & "'"
next

Juan Carlos Badiola
MVP - C#
Respuesta Responder a este mensaje
#3 Eduardo A. Morcillo [MS MVP VB]
13/05/2005 - 23:31 | Informe spam
Mejor todavia, no uses for each y usa un StringBuilder. Un acceso con For
Each es mas lento que un acceso indexado por lo tanto si puedes, accede en
forma indexada. Concatenar strings no es muy recomendable dentro de un bucle
ya que en cada iteracion se debe crear un nuevo string, copiar lo del
anterior y agregarle lo nuevo. El StringBuilder en cambio tiene un buffer en
el cual se va agregando el texto, y de ser necesario se agranda para seguir
agregando data.

Dim stv As New StringBuilder()

With dsdataset.tables("tabla").Rows

For i As Integer = 0 To .Count - 1

Dim fila As DataRow = .Item(i)

stv.Append("'")
stv.Append(fila(0))
stv.Append("'")

Next

End With

Eduardo A. Morcillo [MS MVP VB]
http://www.mvps.org/emorcillo
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida