string[] codes = new string[]{"2008","2009","2010"};
string ret = codes.FirstOrDefault<string>(item => item.CompareTo("2009") > 0);
为什么执行这段代码会报异常:Expression cannot contain lambda expressions
而改为:
string ret = (from c in codes where item.CompareTo("2009") > 0 select c ).FirstOrDefault();就可以执行了呢?
不知为什么,你这上面的代码我可以运行.没出问题.
不过你这二句虽然执行效果一样.但是并不同一意思吧.codes.where(p => item.compareTo()>0).FirstOrDefault():
我这里运行正常
扩展方法+Lambda表达式 >= LINQ
你是想做什么啊