LifetimeContext LifetimeContext LifetimeContext LifetimeContext Class

Definition

Repräsentiert einen Knoten in der Lebensdauer-Struktur.Represents a node in the lifetime tree.

public ref class LifetimeContext sealed : System::Composition::CompositionContext, IDisposable
public sealed class LifetimeContext : System.Composition.CompositionContext, IDisposable
type LifetimeContext = class
    inherit CompositionContext
    interface IDisposable
Public NotInheritable Class LifetimeContext
Inherits CompositionContext
Implements IDisposable
Vererbung
Implementiert

Hinweise

Die LifetimeContext Objekt ist die Einheit für die Freigabe für den freigegebenen Teile.The LifetimeContext object is the unit of sharing for shared parts. Es steuert die Freigabe der gebundenen Teile und kann zum Abrufen von Instanzen, entweder als Teil einer vorhandenen Kompositionsvorgang oder als Grundlage für einen neuen Kompositionsvorgang verwendet werden.It controls the disposal of bound parts and can be used to retrieve instances, either as part of an existing composition operation or as the basis of a new composition operation. Eine einzelne lebensdauerkontext kann gekennzeichnet werden, um Teile enthalten, die von bestimmten freigabengrenzen eingeschränkt werden.An individual lifetime context can be marked to contain parts that are constrained by particular sharing boundaries.

Dieses Objekt enthält, zwei unabhängige geschützte Freigabezustand: freigegebene teileinstanzen und teileinstanzen gebunden.This object contains two pieces of independently protected shared state: shared part instances and bound part instances. Eine Instanz des freigegebenen Teil ist sperrfrei, lesbaren und führt nicht zu Problemen, wenn sie während der Freigabe hinzugefügt wird.A shared part instance is lock-free, readable, and does not result in issues if it is added to during disposal. Es wird durch die gesperrten selbst geschützt.It is protected by being locked itself. Aktivierungslogik ist unvermeidlich unter diese Sperre aufgerufen.Activation logic is unavoidably called under this lock. Eine gebundene Teileinstanz wird immer durch Sperren geschützt , und sollte nie in nach der Freigabe geschrieben werden.A bound part instance is always protected by locking , and should never be written to after disposal. Eine gebundene Teileinstanz nastaven NA hodnotu unter einer Sperre in der Dispose() Methode.A bound part instance is set to under a lock in the Dispose() method. Wenn das Schreiben nach der Freigabe für eine gebundene Teileinstanz zugelassen wird, ergibt es verwerfbare Teile, die nicht freigegeben wird.If writing were allowed after disposal for a bound part instance, it would result in disposable parts not being released. Die Dispose-Methode auf eine gebundene Teil wird außerhalb der Sperre aufgerufen.The dispose method on a bound part is called outside of the lock.

Methoden

AddBoundInstance(IDisposable) AddBoundInstance(IDisposable) AddBoundInstance(IDisposable) AddBoundInstance(IDisposable)

Bindet die Lebensdauer eines Einwegteiles an diesen Lebensdauerkontext.Binds the lifetime of a disposable part to this lifetime context.

AllocateSharingId() AllocateSharingId() AllocateSharingId() AllocateSharingId()

Generiert einen Bezeichner, der verwendet werden kann, um freigegebene Teileinstanzen zu suchen.Generates an identifier that can be used to locate shared part instances.

Dispose() Dispose() Dispose() Dispose()

Gibt den Lebensdauerkontext und alle daran gebundenen Teileinstanzen frei.Releases the lifetime context and any part instances bound to it.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.Determines whether the specified object is equal to the current object.

(Inherited from Object)
FindContextWithin(String) FindContextWithin(String) FindContextWithin(String) FindContextWithin(String)

Sucht den längsten Lebensdauerkontext unter allen angegebenen Freigabegrenzen.Finds the broadest lifetime context within all of the specified sharing boundaries.

GetExport(CompositionContract) GetExport(CompositionContract) GetExport(CompositionContract) GetExport(CompositionContract)

Ruft den Export ab, der mit dem angegebenen Vertrag übereinstimmt.Retrieves the export that matches the specified contract.

(Inherited from CompositionContext)
GetExport(Type) GetExport(Type) GetExport(Type) GetExport(Type)

Ruft den Export ab, der mit dem angegebenen Typen übereinstimmt.Retrieves the export that matches the specified type.

(Inherited from CompositionContext)
GetExport(Type, String) GetExport(Type, String) GetExport(Type, String) GetExport(Type, String)

Ruft den Export ab, der mit dem angegebenen Namen und Typen übereinstimmt.Retrieves the export that matches the specified name and type.

(Inherited from CompositionContext)
GetExport<TExport>() GetExport<TExport>() GetExport<TExport>() GetExport<TExport>()

Ruft den Export ab, der mit dem angegebenen generischen Typparameter übereinstimmt.Retrieves the export that matches the specified generic type parameter.

(Inherited from CompositionContext)
GetExport<TExport>(String) GetExport<TExport>(String) GetExport<TExport>(String) GetExport<TExport>(String)

Ruft den Export ab, der mit dem angegebenen generischen Typparameter und Vertragsnamen übereinstimmt.Retrieves the export that matches the specified generic type parameter and contract name.

(Inherited from CompositionContext)
GetExports(Type) GetExports(Type) GetExports(Type) GetExports(Type)

Ruft eine Collection aller Exporte ab, die mit dem angegebenen Typen übereinstimmen.Retrieves a collection of all exports that match the specified type.

(Inherited from CompositionContext)
GetExports(Type, String) GetExports(Type, String) GetExports(Type, String) GetExports(Type, String)

Ruft alle Exporte ab, die mit dem angegebenen Vertragsnamen und Typ übereinstimmen.Retrieves all exports that match the specified contract name and type.

(Inherited from CompositionContext)
GetExports<TExport>() GetExports<TExport>() GetExports<TExport>() GetExports<TExport>()

Ruft alle Exporte ab, die mit dem angegebenen generischen Typparameter übereinstimmen.Retrieves all exports that match the specified generic type parameter.

(Inherited from CompositionContext)
GetExports<TExport>(String) GetExports<TExport>(String) GetExports<TExport>(String) GetExports<TExport>(String)

Ruft alle Exporte ab, die mit dem angegebenen generischen Typparameter und Vertragsnamen übereinstimmen.Retrieves all exports that match the specified generic type parameter and contract name.

(Inherited from CompositionContext)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Inherited from Object)
GetOrCreate(Int32, CompositionOperation, CompositeActivator) GetOrCreate(Int32, CompositionOperation, CompositeActivator) GetOrCreate(Int32, CompositionOperation, CompositeActivator) GetOrCreate(Int32, CompositionOperation, CompositeActivator)

Ruft einen freigegebenen Teil mit der angegebenen ID ab, oder erstellt eine Teilinstanz mithilfe des angegebenen Erstellers innerhalb des angegebenen Vorgangs, falls die Teilinstanz nicht gefunden werden kann, und gibt diese frei.Retrieves a shared part instance with the specified ID, or if the part instance can not be found, creates and shares a part instance using the specified creator within the specified operation.

GetType() GetType() GetType() GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Gibt die Zeichenfolgendarstellung dieses LifetimeContext-Objekts zurück.Returns the string representation of this LifetimeContext object.

TryGetExport(CompositionContract, Object) TryGetExport(CompositionContract, Object) TryGetExport(CompositionContract, Object) TryGetExport(CompositionContract, Object)

Ruft eine Vertragsinstanz vom Kompositionskontext ab.Retrieves a contract instance from the composition context.

TryGetExport(Type, Object) TryGetExport(Type, Object) TryGetExport(Type, Object) TryGetExport(Type, Object)

Gibt den Export zurück, der dem angegebenen Typ entspricht, oder gibt null zurück, wenn keine Übereinstimmung gefunden wird.Returns the export that matches the specified type, or returns null if no match is found.

(Inherited from CompositionContext)
TryGetExport(Type, String, Object) TryGetExport(Type, String, Object) TryGetExport(Type, String, Object) TryGetExport(Type, String, Object)

Gibt den Export zurück, der dem angegebenen Vertragsnamen und Typ entspricht, oder gibt null zurück, wenn keine Übereinstimmung gefunden wird.Returns the export that matches the specified contract name and type, or returns null if no match is found.

(Inherited from CompositionContext)
TryGetExport<TExport>(String, TExport) TryGetExport<TExport>(String, TExport) TryGetExport<TExport>(String, TExport) TryGetExport<TExport>(String, TExport)

Gibt den Export zurück, der dem angegebenen generischen Typparameter und Vertragsnamen entspricht, oder gibt null zurück, wenn keine Übereinstimmung gefunden wird.Returns the export that matches the specified generic type parameter and contract name, or returns null if no match is found.

(Inherited from CompositionContext)
TryGetExport<TExport>(TExport) TryGetExport<TExport>(TExport) TryGetExport<TExport>(TExport) TryGetExport<TExport>(TExport)

Gibt den Export zurück, der dem angegebenen genersichen Typparameter Vertragsnamen entspricht, oder gibt null zurück, wenn keine Übereinstimmung gefunden wird.Returns the export that matches the specified generic type parameter, or returns null if no match is found.

(Inherited from CompositionContext)

Extension Methods

SatisfyImports(CompositionContext, Object) SatisfyImports(CompositionContext, Object) SatisfyImports(CompositionContext, Object) SatisfyImports(CompositionContext, Object)

Erfüllt die Importe des angegebenen Objekts aus dem angegebenen Kontext.Satisfies the imports of the specified object from the specified context.

SatisfyImports(CompositionContext, Object, AttributedModelProvider) SatisfyImports(CompositionContext, Object, AttributedModelProvider) SatisfyImports(CompositionContext, Object, AttributedModelProvider) SatisfyImports(CompositionContext, Object, AttributedModelProvider)

Erfüllt die Importe des angegebenen Objekts vom angegebenen Kontext mithilfe der angegebenen Konventionen.Satisfies the imports of the specified object from the specified context, using the specified conventions.

Gilt für: