Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 20328|Risposta: 0

[WebAPI] In MVC5 e webAPI viene utilizzato l'Autofac dependency injection

[Copiato link]
Pubblicato su 29/11/2017 14:35:33 | | | |
Molti libri menzionano concetti come l'iniezione di dipendenza e l'inversione di controllo, tutti mirati a ottenere strati, componenti e scopi di classe debolmente accoppiati.

È comune utilizzare la classe Repository per separare la connessione diretta tra il Controller e il Modello. Per disconnettere la stretta connessione tra la classe Repository e il Controller, di solito non viene definita e istanziata direttamente dalla classe Repository, ma iniettata nel Repository specificato tramite il metodo di costruzione del Controller.



I contenitori IoC più popolari sono: Ninject, Autofac, Unity.

Ecco una breve spiegazione di come utilizzare l'iniezione Autofac MVC5 e Webapi2.

1. Usa nupkg per fare riferimento ad Autofac, Autofac.Mvc5 e Autofac.Webapi2

PM> install-package autofac -versione 3.5.0

PM> install-package autofac.mvc5

PM> install-package autofac.webapi2 (Nota: Se stai usando webapi2 nel tuo progetto, qui deve essere webapi2 e non webapi, altrimenti "Rewrite member Autofac.Integration.WebApi.AutofacWebApiDependencyResolver.BeginScope()" apparirà a runtime) ha violato le regole di sicurezza dell'eredità. L'accessibilità alla sicurezza del metodo sovrascritto deve corrispondere all'accessibilità sicura del metodo riscritto. Sbagliato. )



2. Registra il componente.

3. Creare un contenitore per un uso successivo.

var container=costruttore. Build();
4. Creare un ambito a vita dal Container.

5. Utilizzare questo Ambito di Durata per analizzare istanze dei componenti.

Configurazione. DependencyResolver = nuovo AutofacWebApiDependencyResolver(container); Per registrare un container API, è necessario utilizzare l'oggetto HttpConfiguration
DependencyResolver.SetResolver(nuovo AutofacDependencyResolver(container)); Registra il container MVC
6. Nel metodo Register della classe WebApiConfig, chiama il codice step sopra e passa l'oggetto HttpConfiguration.



Il vantaggio dell'autofac è che può essere disiappiato contemporaneamente senza la necessità di configurazioni; autofac implementa meglio il concetto di "convenzione è superiore alla configurazione" in MVC.





Precedente:asp.net MVC aggiunge un controller WebAPI
Prossimo:Come ricaricarsi.
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com