Esempio n. 1
0
        protected override object Invoke(MethodInfo targetMethod, object[] args)
        {
            object retval = null;

            args = _aspect.OnEnter(targetMethod, args);

            try
            {
                retval = targetMethod.Invoke(_service, args);
            }
            catch (TargetInvocationException ex)
            {
                _aspect.OnException(targetMethod, ex.InnerException);
                throw (ex.InnerException);
            }

            retval = _aspect.OnExit(targetMethod, args, retval);
            return(retval);
        }
Esempio n. 2
0
 public override object OnExit(MethodInfo mi, object[] args, object retval)
 {
     return(handler.OnExit(mi, args, retval));
 }