private AdviceContext BuildAdviceContextFor(MethodInfo method, Stack<IAdvice> advice, object[] arguments) { AdviceContext adviceContext = null; adviceContext = new AdviceContext(() => advice.Pop().Execute(adviceContext), this, _realSubject, method, arguments); return adviceContext; }
public void Execute(AdviceContext context) { context.ReturnValue = _method.Invoke(context.Target, context.Arguments); }