示例#1
0
            public virtual void X()
            {
                var items             = new object[0];
                var task              = Task.FromResult(default(object));
                var interceptorValues = new InterceptionInformation(this, null, "X", items, task);

                ProxyInterceptor.Invoke(interceptorValues);
            }
示例#2
0
 public override void Invoke(AspectContext context, AspectDelegate next)
 {
     try
     {
         next(context);
     }
     catch (Exception ex)
     {
         context.SetException(ex);
         interceptor.Invoke(context, next);
     }
 }
        public void Proceed()
        {
            if (interceptorIndex < interceptors.Length)
            {
                IInterceptor interceptor = interceptors[interceptorIndex];
                interceptorIndex += 1;
                interceptor.Invoke(this);
                return;
            }

            try
            {
                ReturnValue = message.MethodBase.Invoke(target, Arguments);
            }
            catch (TargetInvocationException e)
            {
                Exception exception = e.InnerException;

                ExceptionHelper.PreserveStackTrace(exception);

                throw exception;
            }
        }
示例#4
0
文件: AOPTest.cs 项目: jjg0519/Peace
 public bool AddUser(User user)
 {
     return((bool)_interceptor.Invoke(_user, "AddUser", new object[] { user }));
 }