【发布时间】:2011-02-28 20:47:57
【问题描述】:
基本上,我经常看到这种情况:
public event MyEventHandler MyEvent;
private void SomeFunction()
{
MyEventHandler handler = this.MyEvent;
if (handler != null)
{
handler(this, new MyEventArgs());
}
}
当它可以像这样轻松完成时:
public event MyEventHandler MyEvent;
private void SomeFunction()
{
if (MyEvent != null)
{
MyEvent(this, new MyEventArgs());
}
}
那么,我错过了什么吗?人们是否有某种原因将事件分配给处理程序,然后引发处理程序而不是事件本身?它只是“最佳实践”吗?
【问题讨论】: