Использование [ImportMany(typeof(IModule)]
создаст экземпляр каждого модуля - так работает MEF. Таким образом, один из подходов состоит в том, чтобы конструкторы ваших модулей ничего не делали, а затем вызывали метод Load
на каждом модуле, который вы на самом деле хотите использовать, в котором он может выполнять любую работу, которая ему необходима.
В качестве альтернативы, создайте новый интерфейс с именем IModuleInfo
, который просто содержит информацию, необходимую для вашей области обзора.