Principales respuestas
Bucle con arraylist

Pregunta
-
Hola,
Estoy usando un servicio web que pide como parámetro "parametros as string()" y tengo que hacer un bucle de uno a 100 para ir invocando al servicio con cada numero para que me devuelva los resultados.
For i = 1 to 100
next
Mi problema es que no se como rellenar el array parametros con el valor de i
Muchas gracias y un saludo,
Respuestas
-
"Daniel Palomero" escribió:
> Estoy usando un servicio web que pide como parámetro "parametros as string()"
> y tengo que hacer un bucle de uno a 100 para ir invocando al servicio con cada
> numero para que me devuelva los resultados.
>
> For i = 1 to 100
>
> next
>
> Mi problema es que no se como rellenar el array parametros con el valor de iHola, Daniel:
Si la firma del procedimiento tiene un parámetro declarado como una matriz de valores String:
Sub NombreProcedimiento(parametros As String()) End Sub
Entiendo que lo que le tienes que pasar es una variable declarada como una matriz de valores String:
' Declarar una matriz de valores alfanuméricos Dim parametros As String() = {"valor1", "valor2", "valor3", "valor2938"} ' Pasar la matriz al procedimiento NombreProcedimiento(parametros)
¿Que tienes que recorrer un bucle For ... Next para establecer los valores de los elementos de la matriz? Puedes recorrerlo de la siguiente manera:
' Declarar una matriz de 100 elementos. Dim parametros(99) As String For i As Integer = 0 To 99 ' Al valor de la variable de iteración (i) ' sumarle una unidad. parametros(i) = (i + 1).ToString() Next NombreProcedimiento(parametros)
En el ejemplo, he rellenado los valores con valores alfanuméricos del 1 al 100. Ahora lo que tienes que hacer es asignarle el valor que realmente deben contener los elementos de la matriz.
Recuerda que en Visual Basic los índices de las matrices están en base cero, lo que significa que el primer elemento tiene el índice 0, el segundo el 1, el tercero el 2, etc., de ahí que la matriz la haya declarado con 100 elementos (99), ya que los índices van del 0 al 99, en total, 100 elementos.
Un saludo
Enrique Martínez Montejo
[MS MVP - Visual Studio y Tecnologías de Desarrollo]
Nota informativa: La información contenida en este mensaje, así como el código fuente incluido en el mismo, se proporciona «COMO ESTÁ», sin garantías de ninguna clase, y no otorga derecho alguno. Usted asume cualquier riesgo al poner en práctica, utilizar o ejecutar lo recomendado o sugerido en el presente mensaje.
Si esta respuesta le ha resultado útil, recuerde marcarla como satisfactoria.
Si usas Visual Basic .NET y deseas ser productivo y feliz, se inteligente y activa la instrucción Option Strict.- Marcado como respuesta Enrique M. MontejoModerator jueves, 18 de enero de 2018 7:23
Todas las respuestas
-
"Daniel Palomero" escribió:
> Estoy usando un servicio web que pide como parámetro "parametros as string()"
> y tengo que hacer un bucle de uno a 100 para ir invocando al servicio con cada
> numero para que me devuelva los resultados.
>
> For i = 1 to 100
>
> next
>
> Mi problema es que no se como rellenar el array parametros con el valor de iHola, Daniel:
Si la firma del procedimiento tiene un parámetro declarado como una matriz de valores String:
Sub NombreProcedimiento(parametros As String()) End Sub
Entiendo que lo que le tienes que pasar es una variable declarada como una matriz de valores String:
' Declarar una matriz de valores alfanuméricos Dim parametros As String() = {"valor1", "valor2", "valor3", "valor2938"} ' Pasar la matriz al procedimiento NombreProcedimiento(parametros)
¿Que tienes que recorrer un bucle For ... Next para establecer los valores de los elementos de la matriz? Puedes recorrerlo de la siguiente manera:
' Declarar una matriz de 100 elementos. Dim parametros(99) As String For i As Integer = 0 To 99 ' Al valor de la variable de iteración (i) ' sumarle una unidad. parametros(i) = (i + 1).ToString() Next NombreProcedimiento(parametros)
En el ejemplo, he rellenado los valores con valores alfanuméricos del 1 al 100. Ahora lo que tienes que hacer es asignarle el valor que realmente deben contener los elementos de la matriz.
Recuerda que en Visual Basic los índices de las matrices están en base cero, lo que significa que el primer elemento tiene el índice 0, el segundo el 1, el tercero el 2, etc., de ahí que la matriz la haya declarado con 100 elementos (99), ya que los índices van del 0 al 99, en total, 100 elementos.
Un saludo
Enrique Martínez Montejo
[MS MVP - Visual Studio y Tecnologías de Desarrollo]
Nota informativa: La información contenida en este mensaje, así como el código fuente incluido en el mismo, se proporciona «COMO ESTÁ», sin garantías de ninguna clase, y no otorga derecho alguno. Usted asume cualquier riesgo al poner en práctica, utilizar o ejecutar lo recomendado o sugerido en el presente mensaje.
Si esta respuesta le ha resultado útil, recuerde marcarla como satisfactoria.
Si usas Visual Basic .NET y deseas ser productivo y feliz, se inteligente y activa la instrucción Option Strict.- Marcado como respuesta Enrique M. MontejoModerator jueves, 18 de enero de 2018 7:23
-
Muchas gracias,
Ya he conseguido que funcione. El array es de una única dimensión, lo he realizado de esta forma
For i = 1 to 100
parametros(0) = i.ToString
Next
Tenia un problema al convertir las variables
- Marcado como respuesta Pablo Rubio miércoles, 17 de enero de 2018 22:34
- Desmarcado como respuesta Enrique M. MontejoModerator jueves, 18 de enero de 2018 7:23
-
"Daniel Palomero" escribió:
> For i = 1 to 100
>
> parametros(0) = i.ToString
>
> NextTe advierto que si recorres el bucle tal cual lo has indicado, el primer elemento del array tendrá el valor alfanumérico "100" al finalizar el bucle, y los 99 elementos restantes tendrán el valor alfanumérico "0". Ignoro por completo si esos son los valores que espera el procedimiento al cual llamas. ¿?
Enrique Martínez Montejo
[MS MVP - Visual Studio y Tecnologías de Desarrollo]
Nota informativa: La información contenida en este mensaje, así como el código fuente incluido en el mismo, se proporciona «COMO ESTÁ», sin garantías de ninguna clase, y no otorga derecho alguno. Usted asume cualquier riesgo al poner en práctica, utilizar o ejecutar lo recomendado o sugerido en el presente mensaje.
Si esta respuesta le ha resultado útil, recuerde marcarla como satisfactoria.
Si usas Visual Basic .NET y deseas ser productivo y feliz, se inteligente y activa la instrucción Option Strict.
- Editado Enrique M. MontejoModerator miércoles, 17 de enero de 2018 19:17
- Propuesto como respuesta Pablo Rubio miércoles, 17 de enero de 2018 22:34
- Marcado como respuesta Pablo Rubio miércoles, 17 de enero de 2018 22:34
- Desmarcado como respuesta Enrique M. MontejoModerator jueves, 18 de enero de 2018 7:23
- Votado como útil Enrique M. MontejoModerator jueves, 18 de enero de 2018 7:23