请问这句话怎么解读?谢谢!
clientData.Messages = PageDAL.DeliverMessages(userId).OrderBy(x => x.PublishDate).Select(x => new ClientMessage(x, protocol)).ToList();
x=>是什么意思?谢谢!
------解决思路----------------------
↓是MSDN官方的解释
=>运算符(C#参考)
我试图用自己的语言给你解答,写出来感觉很拗口
算了,坐等高手用平实的语言解答吧
权当抛砖引玉:-)
------解决思路----------------------
x => x.PublishDate 等同于
functionName(x)
{
return x.PublishDate;
}
x => new ClientMessage(x, protocol) 等同于
functionName(x)
{
return new ClientMessage(x, protocol);
}
其中functionName是函数名,可以随便取.Linq中大量使用lamda表达式,而lamda表达式实际上就是匿名委托,所以可以直接翻译成下面对应的函数.其中x的类型可以由系统自动推断出,所以在lamda表达式中可以不指明.