public override void OnBefore(IAspectInvocation invocation) { Console.WriteLine("-------------- Before Logging Aspect -------------"); Console.WriteLine($"Method: {invocation.Method}"); Console.WriteLine($"Object: {invocation.Object}"); Console.WriteLine($"Paramters: {string.Join(",", invocation.Parameters)}"); }
public abstract void OnBefore(IAspectInvocation invocation);
public abstract void OnAfter(IAspectInvocation invocation);
public override void OnAfter(IAspectInvocation invocation) { Console.WriteLine("-------------- After Logging Aspect --------------"); }
public static void ForEachOnAfter(this OnMethodBoundAspectAttribute[] attributes, IAspectInvocation invocation) { foreach (var attribute in attributes) { attribute.OnAfter(invocation); } }
public override void OnBefore(IAspectInvocation invocation) { Console.WriteLine($"--- Before: {invocation.Method}, {invocation.Object}, {string.Join(",", invocation.Parameters)} ---"); }