É possível registrar um serviço em tempo de execução, ou seja, depois que o ContainerBuilder
foi construído e o Container
foi criado (e ContainerBuilder
eliminado)?
ioc-container
autofac
Paul Knopf
fonte
fonte
Respostas:
Sim, você pode, usando o
Update
método emContainerBuilder
:fonte
Como ContainerBuilder.Update foi descontinuado, a nova recomendação é usar o escopo de vida útil do filho.
Adicionando registros a um escopo vitalício
O Autofac permite que você adicione registros “instantaneamente” à medida que você cria escopos vitalícios. Isso pode ajudá-lo quando você precisa fazer um tipo de cancelamento de registro limitado de “solda por pontos” ou se você geralmente só precisa de algumas coisas adicionais em um escopo que você não deseja registrar globalmente. Você faz isso passando um lambda para BeginLifetimeScope () que pega um ContainerBuilder e adiciona registros.
Trabalhando com Lifetime Scopes
fonte