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

Vista: 26892|Resposta: 0

[.NET Core] ASP.NET Core usa Autofac para implementar a injeção de IOC

[Copiar link]
Publicado em 07/05/2019 16:32:23 | | | |
ASP.NET Injeção de Dependência Core usa o contêiner IOC que vem com ele
https://www.itsvse.com/thread-7562-1-1.html
(Fonte: Architect_Programmer)

ASP.NET Core usa Autofac para implementar a injeção de IOC
https://www.itsvse.com/thread-7563-1-1.html
(Fonte: Architect_Programmer)

ASP.NET Core usa o Autofac para implementar interceptação AOP
https://www.itsvse.com/thread-7566-1-1.html
(Fonte: Architect_Programmer)

O contêiner IOC que vem com ASP.NET Core é leve, e não há muitas funções, apenas funções básicas.

Este artigo usará o Autofac para explicar tanto os construtores quanto a injeção de atributos.

O Autofac é um contêiner IoC incrível para Microsoft .NET 4.5, Silverlight 5, aplicativos da Windows Store e aplicativos do Windows Phone 8. Ele pode gerenciar dependências entre classes para que a aplicação possa ser facilmente modificada à medida que a escala e a complexidade aumentam. Implemente o .

A versão .NET Core do projeto é: 2.1.301

Instalar Autofac.Extensions.DependencyInjection

Instale via nuget com o seguinte comando:



Escrevemos 3 interfaces e 3 classes de implementação de forma casual, conforme segue:



Injeção de construtores controladores

Primeiro, vamos modificar o código do ConfigureServices na Inicialização da seguinte forma:

Nota: O valor de retorno do ConfigureServices foi alterado para IServiceProvider.

Código do Controlador:

Conduza o projeto conforme mostrado abaixo:



Injeção de atributos Autofac do controlador

Modifique o método ConfigureServices na Inicialização da seguinte forma:

Código do Controlador:

Conduza o projeto conforme mostrado abaixo:



Pontos principais a serem observados:

  • serviços. AddMvc(). SetCompatibilityVersion(CompatibilityVersion.Version_2_1).AddControllersAsServices();
  • públicoITestService1 _testService1 { get; set; }


Como configurei a interface de serviço como privada no início, a injeção é sempre nula.

Recursos:O login do hiperlink está visível.




Anterior:ASP.NET Injeção de Dependência Core usa o contêiner IOC que vem com ele
Próximo:ASP.NET Tutorial de Uso do Log Core do ILogger
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