Problème d'injection de dépendance Autofac / MVC4 / WebApi (RC) après la mise à niveau de la version bêta
var resolver = new AutofacWebApiDependencyResolver(container);
configuration.ServiceResolver.SetResolver(resolver);
après la mise à jour de ASP.NET MVC4 (RC), je reçois le message d'erreur suivant:
'Système.Web.Http.HttpConfiguration' ne contient pas une définition pour
'ServiceResolver' et aucune méthode d'extension 'ServiceResolver' accepter
un premier argument de type 'System.Web.Http.HttpConfiguration " pourrait être
trouvé (vous manque une directive using ou une référence d'assembly?)
Je me rends compte après la lecture de ce (http://www.asp.net/web-api/overview/extensibility/using-the-web-api-dependency-resolver) que ces interfaces ont changé, mais je ne suis pas sûr de la façon d'appliquer ce changement à la façon dont j'utilise Autofac.
Ai-je besoin d'attendre une nouvelle version de Autofac ou est-il un autre moyen pour que je puisse sortir de cette.
source d'informationauteur George D. | 2012-06-02
Vous devez vous connecter pour publier un commentaire.
Edit:
Comme James Bradt mentionne dans son post ci-dessous, l'Autofac paquet a été mis à jour pour résoudre ce problème, de sorte que toute personne venant à travers ce fil dans l'avenir devrait probablement essayer le nouveau package d'abord 🙂
En fait, avec le nouveau pack, vous avez juste besoin de faire dans votre globale.asax.cs:
/Modifier
Je viens de tomber sur le même problème - j'ai été en mesure de résoudre ça dans ma situation par la création d'une simple IDependencyResolver de mise en œuvre qui encapsule l'existant AutofacDependencyResolver.
Que la classe nom l'indique, je suis à la traiter comme une solution temporaire - le BeginScope et de Disposer de méthodes aurez besoin d'un peu de travail et ne sont évidemment pas adapté pour un environnement de production, mais cela me permet de poursuivre le développement jusqu'à ce qu'une solution émerge.
Donc, avec ces réserves, les IDependencyResolver mise en œuvre ressemble à ceci:
et je l'ai mis comme ça dans le Mondial.asax.cs:
L'AutoFac.WebApi paquet a été mis à jour (RC) - version 2.6.2.859
Cela semble avoir été ajusté pour le changement dans les dépendances entre RC et Bêta
J'ai essayé les solutions ci-dessus, mais n'a pas fonctionné pour moi. Retrait et Réinstallation de ces 2 paquets spécifiques résolu le problème pour moi.