4

Я большой поклонник StructureMap и использую его практически во всем, что я делаю. Однако я использовал его только с интерфейсами. Мне было интересно, есть ли у кого-нибудь опыт использования абстрактных классов? или ... не поддерживает ли этот тип проводки? Если у вас есть это, вы можете опубликовать пример?Работает ли абстрактный класс с StructureMap как с интерфейсом?

Спасибо!

ответ

7

Да, абстрактные классы работают точно так же, как интерфейсы.

Если WorkerBase является абстрактным классом, и RealWorker является реализацией, то:

var container = new Container(x => x.For<WorkerBase>().Use<RealWorker>()); 
var worker = container.GetInstance<WorkerBase>();