Cuestión : ¿Cómo combino 2 List en un DataTable usar LINQ?

Hola: el

I que intenta combinar 2 fuentes de datos en un DataTable usar fuentes de datos de LINQ y de CopyToDataTable.
The es de tipo List>.



//definen a viajeros de la tabla y del columns
DataTable;

Travelers = nuevo DataTable (“viajeros”); columna del
DataColumn;
column = nuevo DataColumn (“nombre y apellidos”, Type.GetType (“System.String”));
Travelers.Columns.Add (column);
column = nuevo DataColumn (“IsFreePlace”, Type.GetType (“System.Boolean”));
Travelers.Columns.Add (column);
column = nuevo DataColumn (, Type.GetType (“System.Decimal” de “IndividualPaymentAmount "));
Travelers.Columns.Add (column); la pregunta del


////////////////////////////////////////////////////////////////////////////////////////////////////
//para consolidar 2 fuentes de datos en fuentes de LINQ del query
//de datos del
//tiene la forma siguiente:
//
//  ListOfItems --> ListA, información del int>>
//
// --> ListB, pregunta del decimal>>
//
//
////////////////////////////////////////////////////////////////////////////////////////////////////
var = (del pax en ListOfItems
del pInfo en Information
donde pax. El == pInfo.Key.TravelerID
del valor selecciona nuevo {pax. Key.FirstName,
pax. Key.LastName,
pax. Key.IsFreePlace,
pInfo.Value}); almacén del


//este Info consolidado en un table
Travelers = query.CopyToDataTableRow> (); el


////////////////////////////////////////////////////////////////////////////////////////////////////
//cuando intento el antedicho, consigo el error siguiente del recopilador: discusión del caso del
////////////////////////////////////////////////////////////////////////////////////////////////////
Error 31: no puede convertir de “System.Collections.Generic.IEnumerableousType#1>” al 'Br/>
Error 30 “System.Collections.Generic.IEnumerableousType#1>” de System.Collections.Generic.IEnumerable.Data.DataRow>'< no contiene una definición para “CopyToDataTable” y la mejor sobrecarga “System.Data.DataTableExtensions del método de la extensión. CopyToDataTable (System. Collections. Generic.IEnumerable)” tiene cierto arguments

////////////////////////////////////////////////////////////////////////////////////////////////////
Next, yo intentó el siguiente: pregunta del
////////////////////////////////////////////////////////////////////////////////////////////////////
IEnumerable = (del pax en ListOfItems
del pInfo en Information
donde pax. El == pInfo.Key.TravelerID
del valor selecciona nuevo {pax. Key.FirstName,
pax. Key.LastName,
pax. Key.IsFreePlace,
pInfo.Value}); el

////////////////////////////////////////////////////////////////////////////////////////////////////
//cuando intento el antedicho, consigo el error siguiente del recopilador: tipo “System.Collections.Generic.IEnumerableousType#1>” del convertido del
////////////////////////////////////////////////////////////////////////////////////////////////////
Can no no implícito a “System.Collections.Generic.IEnumerable.Data.DataRow>”. Una conversión explícita existe (es usted que falta un molde?)el



I puede apenas utilizar fácilmente el 1r método, y después itera con un lazo del foreach, pero el would
like de I para intentar utilizar el método de CopyToDatTable () del System.Data.DataTableExtensions.


Thanks por adelantado, el
JohnB
class= del

Respuesta : ¿Cómo combino 2 List en un DataTable usar LINQ?

Hola jxbma;

La pregunta que usted está intentando ejecutar y llenar sus resultados en un DataTable de no trabajará. El sintaxis para el CopyToDataTable es como sigue:

Función compartida público CopyToDataTable (de T como DataRow) (_
      fuente como IEnumerable (T) del _
) Como DataTable

Pero qué usted tiene es el siguiente:

pregunta del var = (del pax en ListOfItems
                   de pInfo en la información
                   donde pax. == pInfo.Key.TravelerID del valor
                   seleccionar nuevo {pax. Key.FirstName,
                                        pax. Key.LastName,
                                        pax. Key.IsFreePlace,
                                        pInfo.Value});

Cuál el tipo de la pregunta es de tipo anónimo como se puede ver de la cláusula selecta donde usted utiliza la palabra clave nueva sin un tipo. Cuando usted pregunta la lista dos los resultados está de alguna lista o IEnumerable. No hay función que convertirá una lista a un DataRow de un DataTable.

La solución será colocar con los resultados y crear un DataRow del DataTable para cada elemento del resultado fijado.

Fernando

Otras soluciones  
 
programming4us programming4us