有沒有辦法讓攔截一個方法執行和取消呢? 我只找到一種方法來做從Invoke
方法使用Microsoft.Practices.Unity
和ICallHandler
拋出異常,但在Invoke
方法實現,我只能返回getNext()(input, getNext);
。如何攔截和取消方法執行
Bassically這是代碼:
public class TestHandler : ICallHandler
{
public int Order { get; set; }
public IMethodReturn Invoke(IMethodInvocation input,
GetNextHandlerDelegate getNext)
{
Console.WriteLine("It's been intercepted.");
// Here... please Lord, tell me I can cancel it, I'm a good person.
return getNext()(input, getNext);
}
}
恐怕上帝不會幫助你,我不認爲這是可能的。 – danielQ
@downvoter評論你的downvote。你可能不知道答案,沒關係,但問題很好,你知道。 –
你爲什麼要取消執行?你的方法在哪裏運行(我的意思是它在同一個線程)?請給我們更多的細節請 – Star