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


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)

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