C# - dict轉成DataTable / 字典轉DataTable /dict to DataTable

C# - dict轉成DataTable / 字典轉DataTable /dict to DataTable 


dicSubData是一個自行設定的字典變數

先建立DataTable 這邊因為程式簡單,為了方便就直接使用static,

若程式架構需要考慮耦合請自行改寫


Static DataTable dtData = new DataTable();


要轉成DataTable 首先需要填入DataTable 的Columns

這邊就用dicSubData的Key來填


                foreach (var colName in dicSubData.Keys)

              {                           

                 dtData .Columns.Add(colName, typeof(string));                    

                }

                DicToTable(dicSubDatadtData );


填完Columns之後再來就是要把全部字典內容丟進去

寫了一個方法

        public static void DicToTable(Dictionary<string, object> dicDep, DataTable dt)

        {

            

            DataRow dr = dt.NewRow();

            foreach (KeyValuePair<string, object> item in dicDep)

            {               

                    dr[item.Key] = item.Value;              

            }

            dt.Rows.Add(dr);

           

        }

以上便可以新增一行,有多個dict就跑回圈,最後就會完整一整張表了!


留言