Cita:
Iniciado por Romi28x amigos como hago para saber cual es el numero del ID o del elemente dentro de un arreglo for each.
tengo esto
For Each xFila As DataRow In ds_cliente.Tables(0).Rows
SQL = "update Pagos set fecha='" & fproximopago(i) & "' where idcliente=" & xFila("nregistro")
'obj.ExecuteNonQuery(SQL)
'End If
Next xFila
como extraigo del xFila el numero del elemento del arreglo, lo necesito ya que ese numero de elemento es el que voy a sustituir en i
¿ El código que pones es VB no ?
Yo no trabajo con VB sino con c#, pero también me he tenido que enfrentar con ese problema.
Lo que yo hago es tener un contador interno que voy incrementando por cada bucle, con lo cual el valor del contador debe coincidir con el valor del elemento seleccionado en el foreach, o bien directamente en lugar de utilizar un foreach, utilizar un bucle for.
Por Ejemplo:
private static string Pon_BR(string cadena)
{
string newcad = "";
foreach (char ch in cadena)
if (ch == '\r')
newcad = newcad + "<BR>";
else
if (ch != '\n')
newcad = newcad + ch;
return newcad;
}
Si dentro del foreach pones una variable que vas incrementando por ejemplo "i++", el valor de "i" debe coincidir con el valor del indice dentro de la variable cadena dentro del foreach.
Creo que en tu caso sería algo asi:
int i = 0;
For Each xFila As DataRow In ds_cliente.Tables(0).Rows
SQL = "update Pagos set fecha='" &
fproximopago(i) & "' where idcliente=" & xFila("nregistro")
'obj.ExecuteNonQuery(SQL)
'End If
i = i + 1;
Next xFila
Saludos