public TablaDeDatos CreateDT(List <Object> entidades, List <ColumnaDeDataTable> columnas, Func <Object, List <Object> > metodo_constructor_de_fila) { var tabla_de_datos = new TablaDeDatos(); //agrego titulos columnas.ForEach(c => { tabla_de_datos.Columns.Add(c.NombreColumna, c.TipoColumna); }); //agrego elementos adadasddad entidades.ForEach(e => { tabla_de_datos.LoadDataRow(metodo_constructor_de_fila.Invoke(e).ToArray(), true); }); return(tabla_de_datos); // return tabla_de_datos; }
public static TablaDeDatos From(string source) { var instance = new TablaDeDatos(); var lines = source.Split(Environment.NewLine.ToArray()).ToList().FindAll(s => s.Trim() != string.Empty).ToArray(); var tabla_valores = CrearFilas(lines); if (tabla_valores.Count == 0) { throw new Exception("Imposible inferir el tipo de dato de la columna"); } CrearColumnas(instance, lines, tabla_valores); tabla_valores.ForEach(row => instance.LoadDataRow(row, true)); return(instance); }