日期:2014-05-17  浏览次数:20677 次

异步委托的执行顺序是怎样的?
下面的代码对事件loginEvent注册了两个方法:IsFileExists和DownloadData,

 private event EventHandler loginEvent;
 loginEvent += new EventHandler(IsFileExists);
 loginEvent += new EventHandler(DownloadData);

这两个方法执行的顺序是怎样的?是否一定会先执行IsFileExists,然后再执行DownloadData呢?
谢谢!

------解决方案--------------------
事务逻辑不应该这样表达。想想下面的写法是否更符合思考习惯?

void OnLoggedOn(...)
{
   if( !IsFileExists() )
   {
      DownloadData();
   }
}



------解决方案--------------------
http://msdn.microsoft.com/zh-cn/library/system.multicastdelegate.getinvocationlist(v=VS.90).aspx