IExtension<T> Interface


Enables an object to extend another object through aggregation.

generic <typename T>
 where T : IExtensibleObject<T>public interface class IExtension
public interface IExtension<T> where T : IExtensibleObject<T>
type IExtension<'T (requires 'T :> IExtensibleObject<'T>)> = interface
Public Interface IExtension(Of T)

Type Parameters


The object that participates in the custom behavior.



WCF allows you to extend System.ServiceModel.IExtensibleObject<T> objects (the System.ServiceModel.IContextChannel, System.ServiceModel.ServiceHost, System.ServiceModel.InstanceContext, and System.ServiceModel.OperationContext classes) by adding a new state or behavior by using its extensible object pattern. The extensible object pattern is used in WCF to either extend existing run-time classes with new functionality or to add new state features to an object.



Enables an extension object to find out when it has been aggregated. Called when the extension is added to the Extensions property.


Enables an object to find out when it is no longer aggregated. Called when an extension is removed from the Extensions property.

Applies to