PostSharp:为什么LogAttribute没有建议?

问题描述 投票:1回答:1

我使用ILSpy来探索LogAttribute类。但我无法理解它是如何工作的?

据我所知,创建方面有两种方法:

1)高级:OnMethodBoundaryAspect,OnExceptionAspect,MethodInterceptionAspect,LocationInterceptionAspect,EventInterceptionAspect。

2)低级:具有On *** Advice属性的MethodLevelAspect。

但LogAttribute既不使用第一种情况也不使用第二种情况。 LogAttribute扩展了MethodLevelAspect但没有建议。那么它是怎样工作的?

postsharp
1个回答
0
投票

创建问题中描述的方面的两种方法是支持和记录的方法。但是,在较低级别上,PostSharp SDK将方面类实现的接口与weaver类匹配。然后,所选择的编织器处理目标代码元素的IL编织。

提供方面的基类(例如OnMethodBoundaryAspect)和建议(例如OnMethodEntryAdvice)以使公共方面的实现更方便。从PostSharp 6.1开始,最终用户目前不支持从头开始创建自定义方面编织器的用例。

© www.soinside.com 2019 - 2024. All rights reserved.