public static void OnAspectsInitialized(this MethodBody body, PointCut action) { var method = body.Method; if (!method.HasBody) { return; } if (!method.IsConstructor || method.IsStatic) { body.AfterEntry(action); return; } MethodReference initializer = method.DeclaringType.Methods.FirstOrDefault(m => m.Name == Constants.InstanceAspectsMethodName); if (initializer == null) { body.AfterEntry(action); return; } initializer = initializer.MakeHostInstanceGeneric(method.DeclaringType); body.OnCall(initializer, action); }