What does "(item) =>" do?
本文关键字:quot gt do does What item | 更新日期: 2023-09-27 18:05:40
我正在努力学习c#和mvc。我想有一个WebGrid列作为Html。动作链接,但是,它不会工作,直到我这样做:
grid.Column(format: (item) => Html.ActionLink("Edit", "Edit", new { id = item.Id }))
所以我知道这修复了它,但为什么呢?(项)看起来像强制转换,但是=>的作用是什么?从阅读其他问题中我发现,出于某种原因,这样做显然是不好的——为什么?
这在c#中被称为lambda表达式/匿名函数。()
部分是参数列表,=>
表示右侧是lambda的主体/表达式。
这是一个稍微扩展的形式,可能更清楚一些
Func<ItemType, string> linkFunction = (item) =>
{
return Html.ActionLink("Edit", "Edit", new { id = item.Id });
};
这将是一个lambda表达式。不,使用lambda并不是坏事,它是一件(非常)好的事情。