CompositionContainer.ReleaseExport CompositionContainer.ReleaseExport CompositionContainer.ReleaseExport CompositionContainer.ReleaseExport Method

Definition

Overloads

ReleaseExport(Export) ReleaseExport(Export) ReleaseExport(Export)

Releases the specified Export object from the CompositionContainer.

ReleaseExport<T>(Lazy<T>) ReleaseExport<T>(Lazy<T>) ReleaseExport<T>(Lazy<T>) ReleaseExport<T>(Lazy<T>)

Removes the specified export from composition and releases its resources if possible.

ReleaseExport(Export) ReleaseExport(Export) ReleaseExport(Export)

Releases the specified Export object from the CompositionContainer.

public:
 void ReleaseExport(System::ComponentModel::Composition::Primitives::Export ^ export);
public void ReleaseExport (System.ComponentModel.Composition.Primitives.Export export);
member this.ReleaseExport : System.ComponentModel.Composition.Primitives.Export -> unit

Parameters

export
Export Export Export Export

The Export that needs to be released.

Exceptions

Remarks

The behavior of this method may vary depending on the implementation of the ExportProvider that produced the Export instance. As a rule, non-shared exports should be detached from the container.

For example, the CatalogExportProvider will only release an Export if it comes from a ComposablePart that was constructed under a NonShared context. Release in this context means walking the dependency chain of the Export objects, detaching references from the container and calling Dispose on the ComposablePart objects as needed. If the Export was constructed under a Shared context the CatalogExportProvider will do nothing, as the specified Export may being used by other requestors. Those will only be detached when the container is itself disposed.

ReleaseExport<T>(Lazy<T>) ReleaseExport<T>(Lazy<T>) ReleaseExport<T>(Lazy<T>) ReleaseExport<T>(Lazy<T>)

Removes the specified export from composition and releases its resources if possible.

public:
generic <typename T>
 void ReleaseExport(Lazy<T> ^ export);
public void ReleaseExport<T> (Lazy<T> export);
member this.ReleaseExport : Lazy<'T> -> unit
Public Sub ReleaseExport(Of T) (export As Lazy(Of T))

Type Parameters

T

The type of the export.

Parameters

export
Lazy<T> Lazy<T> Lazy<T> Lazy<T>

An indirect reference to the export to remove.

Applies to