private ICallReturn RemoveEventSubscription(ICallInvocation invocation) { var subscriber = (PropertyChangedEventHandler)invocation.Arguments[0]; propertyChanged -= subscriber; return(invocation.Return(null)); }
public ICallReturn Invoke(ICallInvocation invocation, GetNextCallHandlerDelegate getNext) { object result; MethodBase method = invocation.MethodBase; object[] args = invocation.Arguments.ToValueArray(); try { result = method.Invoke(invocation.Target, args); } catch (TargetInvocationException ex) { return(invocation.ReturnException(ex.InnerException)); } return(invocation.Return(result)); }