Convertir Lista en Datatable C#
Existen ocasiones en las que debemos trabajar con objetos del tipo lista genérica y si no tienes cierta experiencia usándolas o recorriendolas puede que en ocasiones sea hasta un poco difícil tratar con las mismas, sobre todo cuando tu no las generas ya sea porque utilices una Dll de un tercero o porque tu proyecto deba recibirlo como parámetro de algún WebService y no sepas internamente como esta construida, así que si deseas saber que es lo que tiene y tratarla como un Datatable por comodidad aquí una pequeña y sencilla Solución con un código simple que espera como parámetro una Lista del tipo genérico.
Tutorial C# - Convertir Lista Genérica en Datatable
Código:
Con este código solo deberás invocar el método y pasarle una lista del tipo que desees para que se convierta en un Datatble el resultado puedes almacenarlo en una Variable del tipo Datatable o puedes manipularlo desde el método, como por ejemplo en un foreach para recorrerla:
Espero te haya sido de utilidad.
Muy bueno! Hace poco me tope con ese problema!
ResponderEliminarGracias!
Excelente amigo, una manera eficiente y reutilizable de convertir, me ayudo mucho
ResponderEliminar:) Gracias
Una consulta por que no me reconoce la letra "T" cuando implemento tu codigo. me sale como si faltaría una directiva agradecería tu apoyo.
ResponderEliminaryo también tengo la misma duda. a que se debe que no reconozca la letra "T"
ResponderEliminarPara que te acepte la T tienes que poner
ResponderEliminarUsing System.Collections;
La T no está declarada en el método, probablemente sea una variable externa. Use la librerías de Collections y la "T" sigue sin ser reconocida en ese contexto.
EliminarEs un buen aporte de codigo en mi caso he trabajado un largo tiempo con los grid y las herramientas que te ofrece son bastantes, como que puedes amarrar tu grid a una entidad u objeto para que tome el numero de columnas que tiene tu entity u objeto y si se esta utilizando la tecnología linq, se crea una lista y se llena el grid con a lo mucho 2 lineas de codigo.
ResponderEliminarPor ejemplo:
List lstPerson = dc.GetTable().ToList();
this.dgvPersona.DataSource = lstPerson;
donde Persona es mi entidad.
lstPerson es mi lista.
dc es mi DataContext.
dgvPersona es mi DatGridView.
eso es todo.