Enumerable. SingleOrDefault方法:
返回序列中满足指定条件的唯一元素;如果这类元素不存在,则返回默认值;如果有多个元素满足该条件,此方法将引发异常
http://msdn.microsoft.com/zh-cn/library/bb549274.aspx
Dictionary<int, string> dic = new Dictionary<int, string>();
Dictionary<int, string> dic2 = new Dictionary<int, string>();
dic.Add(2, "aaa");
dic.Add(3, "bbb");
string s = dic.SingleOrDefault(d => d.Key == 2).Value;
//正确
dic2 = dic.SingleOrDefault(d => d.Key == 2);
//报错
Console.WriteLine(s);
我想问,既然,SingleOrDefault返回的是序列中满足条件的唯一元素,那么,报错的那一句为什么会报错,返回的就是键值对啊
如果硬是要错的话,为什么正确的那句又是正确的,要错,大家都应该错啊!道理一样啊