dictionary.Keys是字典主键集合(key是参数代号);
DataTable dt = new DataTable();
dt.Columns.Add("时间");
foreach (string str in dictionary.Keys)
{
dt.Columns.Add(str);
}dt.Rows.Add(....);如上述代码,现在已经动态创建了列,且列是动态创建的,那么现在如何动态地创建行呢?行是字典中的Value(Value对应的是一个数组,如:
Value = ( (key1,time1,value1),(key1,time2,value2),......),
Value = ( (key2,time1,value21),(key2,time2,value22),......),
所要生成的表的格式是
时间 key1 key2 ...time1 value1 value21 ...
请各位指点迷津,焦急等待中...
DataTable dt = new DataTable();
dt.Columns.Add("时间");
foreach (string str in dictionary.Keys)
{
dt.Columns.Add(str);
}dt.Rows.Add(....);如上述代码,现在已经动态创建了列,且列是动态创建的,那么现在如何动态地创建行呢?行是字典中的Value(Value对应的是一个数组,如:
Value = ( (key1,time1,value1),(key1,time2,value2),......),
Value = ( (key2,time1,value21),(key2,time2,value22),......),
所要生成的表的格式是
时间 key1 key2 ...time1 value1 value21 ...
请各位指点迷津,焦急等待中...
DataTable dt=new DataTable();
dt.Columns.Add("时间");
foreach (string str in dictionary.Keys)
{
dt.Columns.Add(str);
} dt.PrimaryKey= new DataColumn[]{dt.Columns["时间"]};
foreach (string str in dictionary.Keys)
{
foreach (object[] objs in dictionary[str])
{
DataRow dr = null;
dr = dt.Rows.Find(objs[0]);
if (dr == null)
{
dr = dt.NewRow();
dr["时间"] = objs [1];
dt.Rows.Add(dr);
}
dr[objs[0].ToString()] = objs[2];
}
}
{
DataRow dr = dt.NewRow();
for (Int32 j = 0; j < dictionary.Keys.Count; j++)
{
dr[j] = dictionary.ElementAt(j).Value[i];
}
dt.Rows.Add(dr); }
{
DataRow row = dt.NewRow();
for (int j = 0; j < 3; j++)
{
row[j] = j.ToString() + "," + (i + 1).ToString();
}
dt.Rows.Add(row);
}
foreach (KeyValuePair<string, int> item in dictionary)
{
//item.Key, item.Value
}