如何在控制器中使用 PostSharp LoggingAspect?

How to use PostSharp LoggingAspect in controller?

我正在尝试在方法执行完毕后执行一些日志记录逻辑。因此,我使用了 Postsharp 此处描述的基本示例,如下所示:

[PSerializable]
public class LoggingAspect : OnMethodBoundaryAspect
{
  public override void OnExit(MethodExecutionArgs args)
  {
     Console.WriteLine("The {0} method has exited.", args.Method.Name);
  }     
}

然后,我尝试在不同的方法上使用这个属性LoggingAspect。它适用于除控制器 class 以外的所有方法,如下所示:

[ApiController]
    [Route("[controller]/[action]")]
    public class HomeController : ControllerBase
    {
        [LoggingAspect]
        [HttpGet]
        public IEnumerable<Student> Get(string number, int? year)
        {
            ...
        }
    }

我希望属性 LoggingAspect 适用于所有方法,但它在控制器中不起作用。我错过了什么吗?

事实证明,我在使用 LoggingAspect 属性的项目中没有引用 Postsharp。起初并不明显,因为该项目中没有构建或运行时错误。