class 上的方面将检查所有 public 方法

Aspect on class that will inspect all public methods

正在寻找更简单的异常处理方法。

我可以为此目的执行 OnExceptionAspect,尽管这将需要明确归因于预期的方法。

有没有更简单的方法,比如 attributing/tagging 在 class 级别,它将 monitor/inspect/inject 所有 public 方法抛出异常?

因此,我只需要在 class 级别显式标记方面,其中的任何 public 方法都会自动订阅方面功能。

您可以将 OnExceptionAspect 置于任何 class。然后它的所有方法(public、private、protected)都将被方面装饰。

OnExceptionAspect 甚至可以放在程序集级别,并且可以 select 在哪个 class 上哪个命名空间将是方面“multicasted”。例如:

[assembly: MyOnException(AttributeTargetTypes = "MyNamespace.*",
    AttributeTargetTypeAttributes = MulticastAttributes.Public,
    AttributeTargetMemberAttributes = MulticastAttributes.Public)]

将 MyOnException 方面多播到 MyNamespace(和所有子命名空间)中所有 public class 中的所有 public 方法。