protected override sealed bool OnAfterMethodInvocation(MethodBase target, object[] arguments, ref object returnValue, Exception generatedException)
        {
            if (target.Name == "ReflectInt")
            {
                returnValue = 44;
            }
            else if (target.Name == "ReflectPerson")
            {
                returnValue = new Person("Jim");
            }

            return false;
        }
 public virtual Person ReflectPerson(Person person)
 {
     return person;
 }