В моем решении есть статический класс, который используется для работы с различными сборками.Я хочу связать их через MEF, поэтому я создал поле в классе.
[Import(typeof(A))]
static private A _a1;
Затем у меня есть метод, которому я передаю имя сборки в качестве аргумента:
public static A LoadPackage(string filePath)
{
var catalog = new AggregateCatalog();
catalog.Catalogs.Add(new AssemblyCatalog(filePath));
var _container = new CompositionContainer(catalog);
???
}
Итак, есть ли способ импортировать тип из сборки, указанной в filepath?
Я не могу сделать:
_container.ComposeParts(this);
, поскольку класс `static и я не могу это сделать
_container.ComposeParts(_a1);
(что может быть неправильно с самого начала), поскольку A
не имеет конструкторов (поэтому _a1
имеет значение null)