C#のデータテーブル列ライントランスフェクトされた実装方法

免責事項:道路は場所の紹介を学ぶためにたくさん持っている、それにあなたを助けるために願っています!https://blog.csdn.net/mingzaiwang/article/details/77935046
公共のDataTable RowsToCol(DataTableのDT)
{ 
       しようと
        {   
                      int型をrowCount = DT.Rows.Count。
                      int型columnsCount = DT.Columns.Count。
                      DataTableの結果=新しいDataTableを(); 
                      DataTableのRowsDT =新しいDataTableを(); 
                      DataTableのCOLSDT =新しいDataTableを(); 
                      以下のために(INT i = 0; I <行カウント; I ++)
                      { 
                              result.Columns.Add(DT.Rows [I] [1] .ToString())。
                              RowsDT.Columns.Add(DT.Rows [I] [1] .ToString())。
                              COLsDT.Columns.Add(DT.Rows [I] [1] .ToString())。
                      } 
                      文字列[] RowsName =新しい文字列[columnsCount]。
                      (I 0 = int型、iがcolumnsCountを<; Iは++)のため
                      {                            
                      RowsName [I] = DT.Columns [I] .ColumnName.Tostring()。
                      } 
                      のための(INT rowsi = 0; rowsi <RowsName.Length; rowsi)
                      { 
                      RowsDT.Rows.Add(新しい文字列[] {RowsName [rowsi]})。
                      } 
                      //行转列的核心部分
                      のための(INT columnsi = 0; columnsi <columnsCount; columnsi ++)
                      { 
                           たDataRow DR = COLsDT.NewRow()。
                           (INT rowj = 0; rowj <をrowCount、rowj ++)のために
                           { 
                                  DR [rowj] =のDT.Rowsは[rowj] [columnsi] .toString(); 
                           } 
                           COLsDT.Rows.Add(DR)。
                      } 
                      
             のための(INT columnsi = 0; columnsi <columnsCount; columnsi ++)
             { 
                 たDataRow resultdr = result.NewRow()。
                 用(INT rowj = 0; rowj <をrowCount、rowj ++)
                 { 
                    IF(rowj == 0)
                     { 
                       resultdr [rowj] =のRowsDT.Rows [columnsi] [0] .ToString(); 
                     } 
                     {
                      resultdr [rowj] =のColsDT.Rowsは[columnsi] [rowj])(.ToString。
                      } 
                  } 
                 result.Rows.Add(resultdr)。
            } 
            
            戻り値の結果; 
       } 
       キャッチ(例外例)
       { 
            新しい例外をスローする(ex.ToString())。
       } 
}

おすすめ

転載: blog.csdn.net/mingzaiwang/article/details/77935046
おすすめ