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)

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

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

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

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

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

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

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

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

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

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

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

(Унаследовано от 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)

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

SatisfyImports(CompositionContext, Object, AttributedModelProvider)

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

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