2013-02-13 31 views
0

假设有一个定义C#委托代码:如何进入MonoDevelop中的第二个C#委托?

public delegate void RezScript(IClientAPI remoteClient, InventoryItemBase item, 
           UUID transactionID, uint localID); 

也有是被定义,并要求委托对象:

RezScript rezScriptHandler = OnRezScript; 
... 
rezScriptHandler += RelayRezScript; 
... 
if (rezScriptHandler != null) { 
    rezScriptHandler(this, item, rezScriptx.InventoryBlock.TransactionID, 
        rezScriptx.UpdateBlock.ObjectLocalID); 
} 

如何通过在这两个调用OnRezScriptRelayRezScript步骤MonoDevelop调试器?跳过将跳过所有代表,逐步进入第一个呼叫并在呼叫委派后返回下一行。我怎样才能通过所有代表?

P.S.我可以重写代码来使用GetInvocationList(),并在for循环中分别调用每个委托,但是重点是在调试时保留好语法。

+0

看来你正在尝试调试事件处理程序,而不是普通的代理。 – 2013-02-13 12:03:45

+0

可能。我对代表的概念很陌生,所以我对术语不太确定,但是你说的话听起来是对的。我正在尝试进入为特定代理对象注册的所有代理处理程序。 – 2013-02-13 13:51:31

回答

1

到目前为止,我发现只有一个这样做 - 在每个函数添加委托的入口处设置一个断点。