Open sandboxFocus

Class EventInterceptionArgs

Arguments of handlers of aspects of the type EventInterceptionAspect.

Inheritance
EventInterceptionArgs
Namespace: PostSharp.Aspects
Assembly: PostSharp.dll
Syntax
public abstract class EventInterceptionArgs : AdviceArgs
Remarks

note

As a result of weaving optimizations, instances of classes derived from AdviceArgs may be shared among different aspects. Therefore, aspect code should not attempt to access this object once the control has been given over to the next node in the chain of invocation. Consider working with if you need such deferred execution.

note

Aspect weaving optimizations may also cause an advice parameter of this type to be seen null when inspecting it in a debugger. If you need to inspect the instance in runtime, consider disabling aspect optimizations in the debug build configuration.

Properties

Name Description
Arguments

Gets the delegate arguments.

Binding

Gets an interface that allows to invoke the next node in the chain of invocation of the intercepted method.

Event

Gets the event to which the current aspect has been applied.

Handler

Gets the delegate being added, removed, or invoked.

ReturnValue

Gets the return value of the delegate.

Methods

Name Description
AddHandler(Delegate)

Adds a handler to the event by invoking the Add semantic of the next node in the chain of invocation.

InvokeHandler(Delegate, Arguments)

Invokes a handler by calling the Invoke semantic of the next node in the chain of invocation.

ProceedAddHandler()

Proceeds with adding the Delegate to the event to which the current aspect. This method invokes the next handler in chain. It is typically invoked from the implementation of OnAddHandler(EventInterceptionArgs).

ProceedInvokeHandler()

Proceeds with invoking the Delegate with the arguments specified in the Arguments property. The delegate may change the Arguments and set the ReturnValue. This method invokes the next handler in chain. It is typically invoked from the implementation of OnInvokeHandler(EventInterceptionArgs).

ProceedRemoveHandler()

Proceeds with removing the Delegate from the event to which the current aspect. This method invokes the next handler in chain. It is typically invoked from the implementation of OnRemoveHandler(EventInterceptionArgs).

RemoveHandler(Delegate)

Removes a handler from the event by invoking the Remove semantic of the next node in the chain of invocation.

See Also