.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表达式