Поделиться через


ExportFactory<T> Класс

Определение

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

generic <typename T>
public ref class ExportFactory
public class ExportFactory<T>
type ExportFactory<'T> = class
Public Class ExportFactory(Of T)

Параметры типа

T

Тип экспорта.

Наследование
ExportFactory<T>
Производный

Комментарии

При косвенном обращении к части с помощью Lazy<T> объекта Value свойство всегда возвращает ссылку на тот же объект. В некоторых случаях может потребоваться, чтобы каждая ссылка приводила к созданию нового объекта. ExportFactory<T> предназначен для этих сценариев.

ExportFactory<T> можно использовать аналогично созданию Lazy<T> частей с атрибутами. То есть контракт импорта, определенный ExportFactory<T> с универсальным параметром T , будет соответствовать экспорту, определенному в T. Например, следующее соответствие экспорта и импорта:

[Export]
public String myData = "Example Data.";

[Import]
public ExportFactory<String> theData { get; set; }
<Export()>
Public myData As String = "Example Data."

<Import()>
Public Property theData As ExportFactory(Of String)

Метод ExportFactory<T>.CreateExport возвращает ExportLifetimeContext<T> объект, имеющий две части. Свойство ExportLifetimeContext<T>.Value предоставляет доступ к созданной части. Dispose Вызов метода ExportLifetimeContext<T> объекта очищает созданную часть и все его зависимости, тем самым позволяя управлять временем существования части без ссылки на созданный контейнер.

Конструкторы

Имя Описание
ExportFactory<T>(Func<Tuple<T,Action>>)

Инициализирует новый экземпляр класса ExportFactory<T>.

Методы

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

Создает экземпляр типа экспорта фабрики.

Equals(Object)

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

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

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

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

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

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

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

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

Возвращает строку, представляющую текущий объект.

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

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