System.Composition Пространство имен

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

Классы

Имя Описание
CompositionContext

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

CompositionContextExtensions

Добавляет методы в контекст композиции, относящиеся к типизированной модели частей.

Export<T>

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

ExportAttribute

Указывает, что тип, свойство, поле или метод предоставляют определенный экспорт.

ExportFactory<T>

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

ExportFactory<T,TMetadata>

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

ExportMetadataAttribute

Задает метаданные для типа, свойства, поля или метода, помеченного атрибутом ExportAttribute.

ImportAttribute

Указывает, что свойство или значение параметра должно быть предоставлено контейнером узла.

ImportingConstructorAttribute

Указывает, какой конструктор следует использовать при создании части атрибута.

ImportManyAttribute

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

ImportMetadataConstraintAttribute

Указывает, что для импорта требуются определенные значения метаданных.

MetadataAttributeAttribute

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

OnImportsSatisfiedAttribute

Указывает, что метод должен вызываться при завершении композиции.

PartMetadataAttribute

Задает метаданные для части.

PartNotDiscoverableAttribute

Указывает, что экспорты этого типа не будут включены в каталог.

SharedAttribute

Помечает декорированную часть как ограниченную совместное использование в пределах указанной границы.

SharingBoundaryAttribute

При применении к импорту объекта ExportFactory<T> помечает границу области общего доступа.