Вы можете объединить несколько советов в одну группу (например, OnEntry
, OnExit
).Это то, что OnMethodBoundaryAspect делает для вас автоматически.После того, как вы сгруппировали советы, вы должны обозначить одно из них как «основной совет».Свойства и pointcut группы должны быть установлены в основной рекомендации.
Точка, назначенная основной рекомендации, действует как селектор целевого элемента рекомендации.Например, SelfPointcut просто выбирает цель аспекта в качестве цели рекомендации.Вы можете найти дополнительную информацию и различные виды точек в документах: https://doc.postsharp.net/advices
В приведенном выше примере вы можете применить атрибут [SelfPointcut]
к методу OnEntry
, чтобы избавиться от сообщения об ошибке.
[PSerializable]
public class LogPlainRequest : IMethodLevelAspect {
public void RuntimeInitialize(MethodBase method) {
}
[OnMethodEntryAdvice]
[SelfPointcut]
public void OnEntry(MethodExecutionArgs args) {
}
}