Open sandboxFocus

Class OnEventRemoveHandlerAdvice

Custom attribute that, when applied on a method of an aspect class, specifies that this method is an advice that has the same semantics as OnRemoveHandler(EventInterceptionArgs).

Inheritance
OnEventRemoveHandlerAdvice
Namespace: PostSharp.Aspects.Advices
Assembly: PostSharp.dll
Syntax
[AttributeUsage(AttributeTargets.Method, AllowMultiple = true, Inherited = true)]
public sealed class OnEventRemoveHandlerAdvice : GroupingAdvice
Remarks

The method to which this custom attribute is applied must be public and must have the same signature as OnRemoveHandler(EventInterceptionArgs). However, it can be static.


If an aspect defines many advices (among OnEventAddHandlerAdvice , OnEventRemoveHandlerAdvice and OnEventInvokeHandlerAdvice ) that are meant to be applied to the same events with consistent ordering, these advices should be grouped together (see Master property).

note

A master advice without a custom attribute derived from Pointcut applies to the event to which the aspect is applied; when the aspect is applied to another kind of declaration, a pointcut is required. An advice without Master and without pointcut joins the group of the master advice declared in its class.

IEventInterceptionAspect OnEventAddHandlerAdvice OnEventInvokeHandlerAdvice
note

Because of the way the C# compiler implements field-like events (i.e. events where you don't implement the Add and Remove semantics manually), the Invoke Event Handler semantic ( OnInvokeHandler(EventInterceptionArgs) or equivalent) shall not be invoked for delegates that have been added from inside the class that declares this event.

Constructors

Name Description
OnEventRemoveHandlerAdvice()

See Also