Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/267.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 数据表中的字典_C#_Dictionary_Datatable - Fatal编程技术网

C# 数据表中的字典

C# 数据表中的字典,c#,dictionary,datatable,C#,Dictionary,Datatable,假设我有3个Dictionary对象。所有3个都具有相同的键,如下所示: Dic1 Dic2 Dic3 K V K V K V A s A z A i B d B e B u C a C r C o D w D t D p Dic1 Dic2 Dic3 K V K V K V A s A z A i B d B e B u C a C r C o D w D t D p 现在,我想将这些字典合并到一个DataTable

假设我有3个
Dictionary
对象。所有3个都具有相同的键,如下所示:

Dic1 Dic2 Dic3 K V K V K V A s A z A i B d B e B u C a C r C o D w D t D p Dic1 Dic2 Dic3 K V K V K V A s A z A i B d B e B u C a C r C o D w D t D p 现在,我想将这些字典合并到一个DataTable中,DataTable应该如下所示:

A s z i B d e u C a r o D w t p A s z i B d e u C a r o D w t p
关于如何从单独的字典到DataTable中的组合字典,有什么建议吗?

假设DataTable已实例化并添加了列

foreach (string k in Dic1.Keys)
{
    DataRow row = table.NewRow();
    row[0] = k;
    row[1] = Dic1[k];
    if (Dic2.ContainsKey(k))
        row[2] = Dic2[k];
    if (Dic3.ContainsKey(k))
        row[3] = Dic3[k];

    table.Rows.Add(row);
}
var dic1=新字典()
{ 
{“A”,“s”},
{“B”,“d”},
{“C”,“a”},
{“D”,“w”},
};
var dic2=新字典()
{ 
{“A”,“z”},
{“B”,“e”},
{“C”,“r”},
{“D”,“t”},
};
var dic3=新字典()
{ 
{“A”,“i”},
{“B”,“o”},
{“C”,“u”},
{“D”,“p”},
};
var table=新数据表();
表.Columns.Add(“K”,typeof(string));
表.列.添加(“c1”,类型(字符串));
表.列.添加(“c2”,类型(字符串));
表.列.添加(“c3”,类型(字符串));
foreach(dic1.Keys中的var键)
{
table.Rows.Add(key,dic1[key],dic2[key],dic3[key]);
}

当然,我怎么会错过这个呢:/I我真的需要进一步提高我的可视化技能!谢谢:-)
var dic1 = new Dictionary<string, string>() 
{ 
    { "A", "s" },
    { "B", "d" },
    { "C", "a" },
    { "D", "w" },
};

var dic2 = new Dictionary<string, string>() 
{ 
    { "A", "z" },
    { "B", "e" },
    { "C", "r" },
    { "D", "t" },
};

var dic3 = new Dictionary<string, string>() 
{ 
    { "A", "i" },
    { "B", "o" },
    { "C", "u" },
    { "D", "p" },
};

var table = new DataTable();
table.Columns.Add("K", typeof(string));
table.Columns.Add("c1", typeof(string));
table.Columns.Add("c2", typeof(string));
table.Columns.Add("c3", typeof(string));
foreach (var key in dic1.Keys)
{
    table.Rows.Add(key, dic1[key], dic2[key], dic3[key]);
}