Este artigo é um artigo espelhado de tradução automática, por favor clique aqui para ir para o artigo original.

Vista: 23713|Resposta: 1

[Fonte] Erro "Dependência circular de componente detectada" do Autofac resolvido

[Copiar link]
Postado em 19-11-2019 11:10:28 | | | |
DependencyResolutionException: Circular component dependency detected: Dolphin.WebUI.Controllers.HomeController -> Dolphin.Service.AccountService -> Dolphin.Service.OrderService -> Dolphin.Service.OrderService.



Cenário de erro: Usando o framework Autofac IOC Properties Injection, esse código de erro é causado por dois tipos que se referenciam, então devemos definir o comportamento para permitir dependências circulares ao usar o Autofac para injeção de propriedades. O código é o seguinte




Basta adicionar este PropertyWiringOptions.AllowCircularDependencies para resolver esse erro




Anterior:Contêiner Docker para acessar serviços de host externos
Próximo:Gastar dinheiro deliberadamente para se registrar, os recursos a serem gastos são simplesmente enganosos
 Senhorio| Postado em 20-11-2019 às 10:43:12 |


AsImplementedInterfaces() é injetado como uma interface, injetando todas as interfaces comuns dessas classes como um serviço (exceto para liberar recursos)

A:IA

construtor. RegisterType<A>(). AsImplementedInterfaces();Ao usar IA, uma instância de A será retornada, ou seja, sua própria instância será injetada
Disclaimer:
Todo software, material de programação ou artigos publicados pela Code Farmer Network são apenas para fins de aprendizado e pesquisa; O conteúdo acima não deve ser usado para fins comerciais ou ilegais, caso contrário, os usuários terão todas as consequências. As informações deste site vêm da Internet, e disputas de direitos autorais não têm nada a ver com este site. Você deve deletar completamente o conteúdo acima do seu computador em até 24 horas após o download. Se você gosta do programa, por favor, apoie um software genuíno, compre o registro e obtenha serviços genuínos melhores. Se houver qualquer infração, por favor, entre em contato conosco por e-mail.

Mail To:help@itsvse.com