Eliminar filas vacías de un DataTable en C#
Al trabajar con DataTables podemos encontrar filas vacías, veamos como eliminar filas vacías de un DataTable desde C#.
¿Por qué eliminarlas?
En ocasiones las filas vacías pueden provocar errores al realizar operaciones con el contenido de la tabla.
Para evitar poner múltiples filtros omitiendo estas filas, podemos únicamente eliminarlas desde el inicio y evitarnos largas líneas de código.
Podría interesarte Agregar datos a un DataTable en C#
Eliminar filas vacías
Antes de comenzar es necesario agregar el espacio de nombre:
using System.Linq;
Tenemos un DataTable con el siguiente contenido, donde observamos filas vacías.
Ahora eliminemos las filas vacías, para ello utilizaremos el código siguiente:
var dtResultado = tablaUno.Rows.Cast<DataRow>().Where(row => !Array.TrueForAll(row.ItemArray, value => { return value.ToString().Length == 0; }));
- El DataTable se llama tablaUno.
- Realizo el recorrido por todas las buscando contenido vacío.
- La tabla sin las filas la guardo en una variable de tipo var.
Podemos ocupar el DataTable con las filas vacías para asignarle la tabla resultante (sin filas vacías) con el siguiente código.
tablaUno = dtResultado.CopyToDataTable();
El resultado de este proceso es una tabla sin filas vacías.
El proceso anterior solo es para eliminar filas con todas las columnas vacías, si alguna columna tiene un dato no será eliminada.