void IMethodAdvice.Advise(MethodAdviceContext context) { if (context.IsAwaitable() && context.IsAsync()) { AdviseAsync(context, async() => await context.ProceedAsync1()); } else if (context.IsAwaitable()) { AdviseAsync(context, context.ProceedAsync1); } else { AdviseSync(context, () => { context.Proceed(); return(1); }); } }