1
В моем коде я поднимаю событие с помощью BeginInvoke
, а потому, что каждое событие имеет различные EventArgs
, мой код полон дублирующие функции, как:Как сделать EndInvoke общим?
private void EndAsyncConnect(IAsyncResult iar)
{
var ar = (System.Runtime.Remoting.Messaging.AsyncResult)iar;
var invokedMethod = (EventHandler<InfoArgs>)ar.AsyncDelegate;
invokedMethod.EndInvoke(iar);
}
private void EndAsyncReceived(IAsyncResult iar)
{
var ar = (System.Runtime.Remoting.Messaging.AsyncResult)iar;
var invokedMethod = (EventHandler<ReceivedArgs>)ar.AsyncDelegate;
invokedMethod.EndInvoke(iar);
}
Есть ли способ, чтобы сделать функцию EndAsync общей для всех событий?