Obtener datos de un DataTable en C#
Para obtener datos de un DataTable en C# es posible identificando la posición de los datos, individual o masivamente.
Obtener datos individuales
Es posible obtener un valor único a partir de la posición fila-columna.
Podría interesarte Crear DataTable manualmente en C#
Por ejemplo:
tablaUno.Rows[0]["Numero"].ToString();
En el ejemplo anterior vamos a obtener un dato único de la tabla “tablaUno”, en la fila “0” y en la columna “Numero”.
Como el dato se obtiene como un objeto, es necesario asignarle el tipo de dato obtenido.
En el ejemplo estamos asignando que el dato se convierta en una cadena.
Obtener datos con ciclo FOR
Hay ocasiones en la que necesitamos recorrer toda la tabla en busca de un dato, para esos casos hacemos uso de un ciclo.
Veamos como recorrer una tabla mediante un ciclo FOR en el siguiente ejemplo:
for(int i=0; i < tablaUno.Rows.Count; i++)
{
tablaUno.Rows[i]["Numero"].ToString();
}
En el ejemplo anterior realizamos lo siguiente:
- Recorremos la tabla “tablaUno” de acuerdo con el número de filas que tiene.
- Sacamos el dato desde la posición “0” hasta “n” número de filas.
- De la columna “Numero” buscamos el dato.
Obtener datos de un ciclo FOREACH
Al igual que el ciclo FOR, es posible recorrer una tabla en busca de algún dato o para obtener todas mediante un ciclo FOREACH.
Veamos el ejemplo siguiente utilizando el ciclo FOREACH:
foreach(DataRow row in tablaUno.Rows)
{
row["Numero"].ToString();
}
Detallemos el ejemplo:
- Recorremos todas las filas “DataRow” de la “tablaUno”, una vez que se recorren todas las filas el ciclo termina.
- El “row” indica la fila.
- Indicamos el nombre de la columna “Numero” del cual obtenemos la información.
- Transformamos el dato obtenido en una cadena.
Observaciones
En los ejemplos anteriores no se está especificando la variable para contener el dato obtenido, solo se muestra la obtención del dato.
Podría interesarte Agregar datos a un DataTable en C#
En el ejemplo uno podríamos guardar el dato de la siguiente manera:
string datoDT = tablaUno.Rows[0]["Numero"].ToString();
Sin embargo, se puede almacenar en un objeto, variable, vector, etc. En el siguiente video podrás ver la explicación del contenido del post.
Para las pruebas te recomendamos el proyecto alojado en GitHub
Me sirvió, muchas gracias
Excelente ayuda. Gracias mil.