这个用法的用意是什么呢?
Dictionary<string, string> ccms1 = new Dictionary<string, string>();
ccms1.Add("1","001");
ccms1.Add("2", "002");
Dictionary<string, string> ccms2 = new Dictionary<string, string>();
ccms2.Add("11", "0011");
ccms2.Add("2", "0022");
var rtcccms1 = ccms1.Union(ccms2).ToDictionary(a => a.Key, b => b.Value);
和
Dictionary<string, string> ccms1 = new Dictionary<string, string>();
ccms1.Add("1","001");
ccms1.Add("2", "002");
Dictionary<string, string> ccms2 = new Dictionary<string, string>();
ccms2.Add("11", "0011");
ccms2.Add("22", "002");
var rtcccms1 = ccms1.Union(ccms2).ToDictionary(a => a.Key, a => a.Value);
为什么用的是ToDictionary(a => a.Key, b => b.Value);
而不是ToDictionary(a => a.Key, a => a.Value);
有什么区别吗? Dictionary
[解决办法]
一样的,只不过起了两个不同的名字
如下,可能会好理解一点
var rtcccms1 = ccms1.Union(ccms2).ToDictionary(delegate(KeyValuePair<string, string> a) { return a.Key; }, delegate(KeyValuePair<string, string> a) { return a.Value; });