Как DI Frameworks, такие как StructureMap / Lamar, "на самом деле" инициализируют зависимости, введенные конструктором?

Предыстория моего вопроса: предположим, что существует служба A, которая вводится с помощью службы B следующим образом:

Public class ServiceA
{
   public ServiceA(IServiceB serviceB)
   {

   }
}

Предположим, что в реестре служб я определил настраиваемый IFamilyPolicy, который определяет определенный тип конкретного типа, который должен быть создан индивидуальным образом везде, где вводится IServiceB.

Когда среда выполнения приложения попадает в конструктор ServiceA, я вижу, что он полностью игнорирует то, что настраиваемый экземпляр, который я определил в реестре служб для IServiceB, и напрямую переходит к конструктору по умолчанию конкретного типа ServiceB!

Я ожидал, что структура DI всегда будет выбирать основную политику регистрации типа, где бы он ни вводился.

Пожалуйста, дайте мне знать, если мой вопрос ясен.

0 ответов

Другие вопросы по тегам