Expression GenerateCall(string methodName, OnMethodBoundaryAspect aspect)
            {
                var method = Expression.Block(
                    Expression.Call(Expression.Constant(aspect), typeof(OnMethodBoundaryAspect).GetMethod(methodName), ArgsExpression),
                    Expression.Assign(RetMethodValue,
                                      Expression.Call(ArgsExpression, typeof(MethodExecutionArgs).GetProperty("ReturnValue").GetGetMethod())));

                return(_isByRefArgs ? method.UpdateRefParamsByArguments(_args, ArgsExpression) : method);
            }
 public DefaultConventionScannerWithAspects(OnMethodBoundaryAspect[] aspects)
 {
     if (aspects != null) 
         _aspects = aspects;
 }