PostSharpAPI ReferencePost­Sharp.​Patterns.​Dynamic­AdvisingDynamic­Advising­ServicesQuery­Interface
Open sandboxFocus

DynamicAdvisingServices.QueryInterface Method

QueryInterface<T>(Object, Boolean)

Gets the implementation of a specified interface for the specified object.

public static T QueryInterface<T>(object obj, bool throwing = true)
where T : class
Type Name Description
Object obj

The object for which the interface should be queried.

Boolean throwing

true if the method should throw a InvalidCastException if obj does not implement the T interface, false if null be returned instead. The default value is true.

Type Description

An object implementing the T interface on behalf of obj, or null if obj does not implement T and throwing is true.

Type Parameters
Name Description

The type of the required interface.


This method shall return obj if the type of obj statically implements the interface. Otherwise, the method shall return another object that implements T on behalf of obj. In this case, the returned object shall implement the IDynamicInterfaceImplementation interface, which allows to navigate back to obj.