2011-03-18 14 views
6

¿Es posible completar una entidad con los contenidos de una DataTable?De datatable a Entity

+0

Nop. AFAIK recorriendo el DataTable será la única opción – gideon

+0

Hmm tal vez haya una mejor manera. Estoy leyendo una hoja de cálculo en una tabla de datos y luego quería usar eso para llenar una entidad SQL. Estoy haciendo esto mal? – Brian

+0

@Brian ¿Lee la hoja de cálculo directamente en la Entidad SQL? – gideon

Respuesta

9

No estoy seguro de que esto sea exactamente lo que está buscando, pero debería funcionar; hay un método de extensión .AsEnumerable() que luego puede usar para proyectar la fila en una nueva entidad.

var products = productTable.AsEnumerable().Select(row => new Product 
{ 
    ProductID = row.Field<int>("ProductID"), 
    Name = row.Field<string>("Name"), 
    CreatedDate = row.Field<DateTime>("CreatedDate") 
}); 

Por lo que yo sé el método .Field<T>() no hacer ningún tipo de conversión por lo que si la columna no ha tenido el tipo de conjunto que tendrá que hacer la conversión a sí mismo.