当前位置: 代码迷 >> ASP.NET >> .NET 4.0中总是看到 => 操作符,什么意思
  详细解决方案

.NET 4.0中总是看到 => 操作符,什么意思

热度:6435   发布时间:2013-02-25 00:00:00.0
.NET 4.0中老是看到 => 操作符,什么意思

C# code
var albums = storeDB.albums.Include("artist").Where (a => a.title.contains(q)).take(10);//-------------    public ViewResult Index()        {            var album = db.Albums.Include(a => a.Genre).Include(a => a.Artist);            return View(album.ToList());        }


这个 => 操作符到底什么意思,谢谢解答。

------解决方案--------------------------------------------------------
lambda=>http://msdn.microsoft.com/zh-cn/library/vstudio/bb397687.aspx
------解决方案--------------------------------------------------------
Lambda表达式,相当于一个函数,()为它的参数,=>后面的是函数的表达是。

比如
Func<int, int> Abs = x => x > 0 ? x : 0 - x;
------解决方案--------------------------------------------------------
http://msdn.microsoft.com/zh-cn/library/bb397687(v=vs.90).aspx
------解决方案--------------------------------------------------------
=> 英文可以读goto. 这里意思是函数的定义在后面

如果你熟悉JavaScript的匿名函数,就比较好理解:

a => a.title.contains(q)

相当于 JavaScript的匿名函数(jQuery 有很多的例子):

function(a){ 
return a.title.contains(q);
}

a => a.title.contains(q)
大约相当于C#
bool Function(album a) 
{
return a.title.contains(q);
}

再具体你要仔细看lambda expression/closure
------解决方案--------------------------------------------------------
lambda表达式
  相关解决方案