2009-08-07 7 views
0

j'ai 3 collection datatable qui montre dans ce ci-dessousComment fusionner mutiple tables en un seul, avec les mêmes schémas et les noms de colonnes

Month: January 
ID  NAME  Absent 
001 John  3 
002 Travis  0 

Month: February 
ID  NAME  Absent 
001 John  18 
002 Travis  14 

Month: March 
ID  NAME  Absent 
001 John  10 
002 Travis  5 

Avant, j'ai utilisé pour merge DataTable

dataTable.merge(dataTable2); 

Le résultat est le suivant:

ID  NAME  Absent 
001 John  3 
002 Travis  0 
001 John  18 
002 Travis  14 
001 John  10 
002 Travis  5 

dataTable.Merge(dataTableTemp); 
GridView.DataSource = dataTable; 
GridView.DataBind(); 

Mais, je veux créer comme ça (nous disons: GridView personnalisé):

   Jan  Feb  Mar Apr 
ID NAME  Absent Absent Absent Absent 
001 John  3  18  10 
002 Travis 0  14  5 

Comment ajouter/fusionner tous les mois dans le côté droit de la table avant, donc si j'ajouter le mois prochain, il apparaîtra dans le côté droit de la table avant ..

Comment créer ceci: ??? Y at-il une méthode de fonction ou d'outils que je peux utiliser?

Merci pour toute aide ..

+1

est le nom ou le numéro du mois dans votre table d'origine? Cela rendrait les choses plus faciles ... (plutôt que d'avoir à comprendre à partir de la séquence, quelle entrée est quel mois) –

+0

Comment SharePoint est-il lié à cette question? –

Répondre

2

Essayez ceci:

 void Merge(DataTable masterDataTable, DataTable[] dataTables, int columnIndex) 
     { 
      foreach (DataTable dt in dataTables) 
      { 
       DataColumn newColumn = masterDataTable.Columns.Add(dt.TableName, typeof(int)); 
       int newColumnIndex = masterDataTable.Columns.IndexOf(newColumn); 
       for (int i = 0; i < dt.Rows.Count; i++) 
       { 
        masterDataTable.Rows[i][newColumnIndex] = dt.Rows[i][columnIndex]; 
       } 
      } 
     } 

et voici comment vous l'utilisez:

 Merge(janDataTable, new DataTable[]{ febDataTable, marDataTable, aprDataTable}, 2); 
+0

Merci khalil .. c'est résoudre mon problème ... – Malikul

Questions connexes