Cet article est un article miroir de traduction automatique, veuillez cliquer ici pour accéder à l’article original.

Vue: 20328|Répondre: 0

[WebAPI] Dans MVC5 et webAPI, l’injection de dépendance Autofac est utilisée

[Copié le lien]
Publié sur 29/11/2017 14:35:33 | | | |
De nombreux livres mentionnent des concepts tels que l’injection de dépendances et l’inversion de contrôle, tous visant à atteindre des couches, composants et objectifs de classe faiblement couplés.

Il est courant d’utiliser la classe Repository pour séparer la connexion directe entre le Contrôleur et le Modèle. Afin de déconnecter la connexion étroite entre la classe Repository et le Controller, il n’est généralement pas directement défini ni instanciat par la classe Repository, mais injecté dans le Repository spécifié via la méthode de construction du Controller.



Les conteneurs IoC populaires sont : Ninject, Autofac, Unity.

Voici une brève explication de la façon d’utiliser l’injection Autofac, MVC5 et Webapi2.

1. Utiliser nupkg pour référencer Autofac, Autofac.Mvc5 et Autofac.Webapi2

PM> install-package autofac -version 3.5.0

PM> install-package autofac.mvc5

PM> install-package autofac.webapi2 (Note : si vous utilisez webapi2 dans votre projet, il doit s’agir ici de webapi2 et non de webapi, sinon « Rewrite member Autofac.Integration.WebApi.AutofacWebApiDependencyResolver.BeginScope() » apparaîtra à l’exécution) a violé les règles de sécurité de l’héritage. L’accessibilité sécuritaire de la méthode écrasée doit correspondre à l’accessibilité sécurisée de la méthode réécrite. Erreur. )



2. Enregistrer le composant.

3. Créer un conteneur pour une utilisation ultérieure.

var conteneur=constructeur. Build() ;
4. Créer une longe-vue à vie à partir du conteneur.

5. Utiliser cette portée de vie pour analyser les instances des composants.

config. DependencyResolver = new AutofacWebApiDependencyResolver(container) ; Pour enregistrer un conteneur API, vous devez utiliser l’objet HttpConfiguration
DependencyResolver.SetResolver(nouveau AutofacDependencyResolver(conteneur)) ; Enregistrer le conteneur MVC
6. Dans la méthode Register de la classe WebApiConfig, appelez le code étape ci-dessus et passez l’objet HttpConfiguration.



L’avantage de l’autofac est qu’il peut être découplé en une seule fois sans besoin de configuration ; autofac implémente mieux le concept de « la convention est supérieure à la configuration » dans MVC.





Précédent:asp.net MVC ajoute un contrôleur WebAPI
Prochain:Comment se recharger.
Démenti:
Tous les logiciels, supports de programmation ou articles publiés par Code Farmer Network sont uniquement destinés à l’apprentissage et à la recherche ; Le contenu ci-dessus ne doit pas être utilisé à des fins commerciales ou illégales, sinon les utilisateurs assumeront toutes les conséquences. Les informations sur ce site proviennent d’Internet, et les litiges de droits d’auteur n’ont rien à voir avec ce site. Vous devez supprimer complètement le contenu ci-dessus de votre ordinateur dans les 24 heures suivant le téléchargement. Si vous aimez le programme, merci de soutenir un logiciel authentique, d’acheter l’immatriculation et d’obtenir de meilleurs services authentiques. En cas d’infraction, veuillez nous contacter par e-mail.

Mail To:help@itsvse.com