C# · 12月 23, 2021

C#:Action delegate vs explicit delegate

只是一个简单的问题:人们对使用Action委托进行公共类事件与定义自己的事件委托类型的想法是什么?我知道很多人使用Actions作为“次要”代理,例如lamdas和.ForEach()扩展方法等,但对于实际的类事件成员,使用Actions是个好主意吗?什么是这个领域的“最佳实践”.

谢谢

解决方法 而不是Action,我使用EventHandler< TEventArgs>对于任何事件声明.它使我无需定义自己的委托类型.它还具有强制数据类型从System.EventArgs派生的额外好处,因此可以很好地与.Net事件模式一起使用.