LifetimeContext Класс

Определение

Представляет узел в дереве времени существования.

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
Наследование
LifetimeContext
Реализации

Комментарии

Объект LifetimeContext — это единица общего доступа для общих частей. Он управляет удалением привязанных частей и может использоваться для извлечения экземпляров в рамках существующей операции композиции или в качестве основы новой операции композиции. Отдельный контекст времени существования можно пометить, чтобы содержать части, ограниченные определенными границами общего доступа.

Этот объект содержит две части независимо защищенного общего состояния: общие экземпляры частей и привязанные экземпляры частей. Общий экземпляр части является заблокированным, читаемым и не приводит к проблемам, если он добавляется во время удаления. Она защищена блокировкой. Логика активации неизбежно вызывается под этой блокировкой. Экземпляр привязанной части всегда защищен блокировкой thisи никогда не должен записываться в после удаления. Экземпляр привязанной части устанавливается null под блокировкой метода Dispose() . Если запись была разрешена после удаления для экземпляра связанной части, это приведет к тому, что удаленные части не будут освобождены. Метод dispose для связанной части вызывается за пределами блокировки.

Методы

Имя Описание
AddBoundInstance(IDisposable)

Привязывает время существования удаленной части к этому контексту времени существования.

AllocateSharingId()

Создает идентификатор, который можно использовать для поиска экземпляров общих частей.

Dispose()

Освобождает контекст времени существования и все экземпляры частей, привязанные к нему.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
FindContextWithin(String)

Находит самый широкий контекст времени существования во всех указанных границах общего доступа.

GetExport(CompositionContract)

Извлекает экспорт, соответствующий указанному контракту.

(Унаследовано от CompositionContext)
GetExport(Type, String)

Извлекает экспорт, соответствующий указанному имени и типу.

(Унаследовано от CompositionContext)
GetExport(Type)

Извлекает экспорт, соответствующий указанному типу.

(Унаследовано от CompositionContext)
GetExport<TExport>()

Извлекает экспорт, соответствующий указанному параметру универсального типа.

(Унаследовано от CompositionContext)
GetExport<TExport>(String)

Извлекает экспорт, соответствующий указанному параметру универсального типа и имени контракта.

(Унаследовано от CompositionContext)
GetExports(Type, String)

Извлекает все экспорты, соответствующие указанному имени контракта и типу.

(Унаследовано от CompositionContext)
GetExports(Type)

Извлекает коллекцию всех экспортов, которые соответствуют указанному типу.

(Унаследовано от CompositionContext)
GetExports<TExport>()

Извлекает все экспорты, соответствующие указанному параметру универсального типа.

(Унаследовано от CompositionContext)
GetExports<TExport>(String)

Извлекает все экспорты, соответствующие указанному параметру универсального типа и имени контракта.

(Унаследовано от CompositionContext)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetOrCreate(Int32, CompositionOperation, CompositeActivator)

Извлекает общий экземпляр части с указанным идентификатором или если экземпляр части не найден, создает и предоставляет общий доступ к экземпляру части с помощью указанного создателя в рамках указанной операции.

GetType()

Возвращает Type текущего экземпляра.

(Унаследовано от Object)
MemberwiseClone()

Создает неглубокую копию текущей Object.

(Унаследовано от Object)
ToString()

Возвращает строковое представление этого LifetimeContext объекта.

TryGetExport(CompositionContract, Object)

Извлекает экземпляр контракта из контекста композиции.

TryGetExport(Type, Object)

Возвращает экспорт, соответствующий указанному типу, или возвращается null , если совпадение не найдено.

(Унаследовано от CompositionContext)
TryGetExport(Type, String, Object)

Возвращает экспорт, соответствующий указанному имени контракта и типу, или возвращается null , если совпадение не найдено.

(Унаследовано от CompositionContext)
TryGetExport<TExport>(String, TExport)

Возвращает экспорт, соответствующий указанному параметру универсального типа и имени контракта, или возвращается null , если совпадение не найдено.

(Унаследовано от CompositionContext)
TryGetExport<TExport>(TExport)

Возвращает экспорт, соответствующий указанному параметру универсального типа, или возвращается null , если совпадение не найдено.

(Унаследовано от CompositionContext)

Методы расширения

Имя Описание
SatisfyImports(CompositionContext, Object, AttributedModelProvider)

Удовлетворяет импорту указанного объекта из указанного контекста с помощью указанных соглашений.

SatisfyImports(CompositionContext, Object)

Удовлетворяет импорту указанного объекта из указанного контекста.

Применяется к

См. также раздел