DataTable dt = new DataTable();
dt.Columns.Add("姓名");
dt.Columns.Add("学号");
dt.Rows.Add(new object[] { "小张", "0001" });
dt.Rows.Add(new object[] { "小王", "0002" });
dt.Rows.Add(new object[] { "小李", "0003" });想把上面的Datatable转换成下面这样的List<Dictionary<string,string>>
List<Dictionary<string, string>> lisD = new List<Dictionary<string, string>>();Dictionary<string, string> dct = new Dictionary<string, string>();
dct.Add("姓名", "小张");
dct.Add("学号", "0001");
lisD.add(dct );dct = new Dictionary<string, string>();
dct.Add("姓名", "小王");
dct.Add("学号", "0002");
lisD.add(dct );dct = new Dictionary<string, string>();
dct.Add("姓名", "小李");
dct.Add("学号", "0003");
lisD.add(dct );
dt.Columns.Add("姓名");
dt.Columns.Add("学号");
dt.Rows.Add(new object[] { "小张", "0001" });
dt.Rows.Add(new object[] { "小王", "0002" });
dt.Rows.Add(new object[] { "小李", "0003" });想把上面的Datatable转换成下面这样的List<Dictionary<string,string>>
List<Dictionary<string, string>> lisD = new List<Dictionary<string, string>>();Dictionary<string, string> dct = new Dictionary<string, string>();
dct.Add("姓名", "小张");
dct.Add("学号", "0001");
lisD.add(dct );dct = new Dictionary<string, string>();
dct.Add("姓名", "小王");
dct.Add("学号", "0002");
lisD.add(dct );dct = new Dictionary<string, string>();
dct.Add("姓名", "小李");
dct.Add("学号", "0003");
lisD.add(dct );
foreach(datarow dr in datatable.rows)
{
Dictionary<string, string> dct = new Dictionary<string, string>()
foreach(datacolumn dc in datatable.datacolumns)
{
dct.add(dc.columnname,dr[dc.columnname].tostring());
}
list .add(dct )
}
ToDictionary的话,可以实现吗?
dt.Columns.Add("姓名");
dt.Columns.Add("学号");
dt.Rows.Add(new object[] { "小张", "0001" });
dt.Rows.Add(new object[] { "小王", "0002" });
dt.Rows.Add(new object[] { "小李", "0003" });想把上面的Datatable转换成下面这样的Dictionary<string,string>
Dictionary<string, string> dct = new Dictionary<string, string>();
dct.Add("小张", "0001");
dct.Add("小王", "0002");
dct.Add("小李", "0003");
{
var dict = new Dictionary<string, string>();
dict.Add("姓名", x[0].ToString());
dict.Add("学号", x[1].ToString());
return dict;
}).ToList();