本文转载自微信公众号《dotNET编程百科全书》,作者zls365。转载本文请联系dotNET编程百科公众号。以前都是通过定义delegate来写delegate,但是最近看到一些老外写的源码是用action和func的形式写的。花时间学习这两种方法,然后发现代码确实简单了很多。我们也可以在练习的过程中慢慢使用这两种方法。先说委托:模拟场景:小明最近学习情绪高涨,之前买的书满足不了他的欲望,于是打算买本书(程序员的自我修养)。不过以前都是去书厂买的,nm,背不了太远,就去附近的书店买,小明去给钱拿回一本书,这委托过程。开始分析1:小明想买一本程序员自我修养的书(xx书不会买)强制要求(这个是定义委托性质)代码:privatedelegatevoidBuyBook();2:附近书店(委托方法)代码:publicstaticvoidBook(){Console.WriteLine("我提供书籍");}3:小明与书店建立关系(委托绑定方法)代码:BuyBookbuybook=newBuyBook(Book);4:小明买书要钱(trigger)buybook();以上内容是为了了解委托的用法。接下来开始讲解Action和FuncAction的用法1:小明很苦恼。我就买一本书,每次都让我定义。它很烦人。有没有办法不定义委托?有办法吗?真的有吗?我们今天讲的ActionActionBookAction=newAction(Book);BookAction()是不是就简单多了?2:小明现在不满意,我看完了程序员的修养,现在想再买一本书,怎么办?我要重新定义委托吗?实际上,您不需要只传递参数。下面看一下Action的用法"IambuyingabookTheoneis:{0}",BookName);}3:现在小明又变心了。我不仅要自己选书,还要从一家很棒的图书制造商那里购买。有这样的方法吗?告诉你是的,ActionstaticvoidMain(string[]args){Action
