寻找更简单的异常处理方法。
我可以为此目的执行OnExceptionAspect,但这需要明确归因于预期的方法。
是否有更简单的方法,例如在类级别归属/标记,它将监视/检查/注入异常抛出的所有公共方法?
因此,我只需要在类级别显式标记方面,其中的任何公共方法都将自动订阅方面功能。
答案 0 :(得分:1)
您可以将OnExceptionAspect放到任何类中。然后,所有它的方法(公共的,私人的,受保护的)将被方面装饰。
OnExceptionAspect甚至可以放在程序集级别上,并且可以选择哪个类在哪个类中作为方面“multicasted”。例如:
[assembly: MyOnException(AttributeTargetTypes = "MyNamespace.*",
AttributeTargetTypeAttributes = MulticastAttributes.Public,
AttributeTargetMemberAttributes = MulticastAttributes.Public)]
将MyOnException方面多播到MyNamespace(以及所有子命名空间)中所有公共类中的所有公共方法。