J'essaie de déployer une solution d'API Web MVC sur le serveur. Le serveur dispose du système d'exploitation Windows 2012 R2. C'est une solution d'API Web basée sur MVC 4. Le serveur a l'infrastructure .Net 4.0 installée. À l'exception de cette machine serveur, la solution a été déployée et fonctionne correctement comme prévu. Remarque: ces autres machines a Visual Studio installé.Face à face "Impossible de charger le fichier ou l'assembly 'System.Web.Http.WebHost, Version = 4.0.0.0' ou l'une de ses dépendances."
Mon problème ici est - peu importe la méthode que j'applique, soit la solution elle-même ou publier la solution, il ne fonctionne pas et donne l'erreur ci-dessous.
Impossible de charger le fichier ou l'assembly 'System.Web.Http.WebHost, Version = 4.0.0.0, Culture = Neutre, PublicKeyToken = 31bf3856ad364e35' ou l'une de ses dépendances. Le système ne trouve pas le fichier spécifié
Description: Une exception non gérée s'est produite lors de l'exécution de la demande Web en cours. Veuillez consulter la trace de la pile pour plus d'informations sur l'erreur et son origine dans le code.
Exception Détails: System.IO.FileNotFoundException: Impossible de charger le fichier ou l'assembly 'System.Web.Http.WebHost, Version = 4.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35' ou une de ses dépendances. Le système ne peut pas trouver le fichier spécifié.
La trace de la pile dit: [FileNotFoundException: Impossible de charger le fichier ou l'assembly 'System.Web.Http.WebHost, Version = 4.0.0.0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35' ou une de ses dépendances. Le système ne peut pas trouver le fichier spécifié] OSCARService.WebApiApplication.Application_Start() +0
[HttpException (0x80004005). Impossible de charger le fichier ou l'assembly « System.Web.Http.WebHost, Version = 4.0.0.0, Culture = neutre, PublicKeyToken = 31bf3856ad364e35 'ou l'une de ses dépendances. Le système ne peut pas trouver le fichier spécifié.] System.Web.HttpApplicationFactory.EnsureAppStartCalledForIntegratedMode (HttpContext contexte, app HttpApplication) +544 System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS (IntPtr appContext, HttpContext contexte, MethodInfo [] gestionnaires) +186 Système .Web.HttpApplication.InitSpecial (état HttpApplicationState, MethodInfo [] Chariot, IntPtr appContext, HttpContext contexte) 172 System.Web.HttpApplicationFactory.GetSpecialApplicationInstance (IntPtr appContext, HttpContext contexte) 402 System.Web.Hosting.PipelineRuntime.InitializeApplication (IntPtr appContext) +343
[HttpException (0x80004005): Impossible de charger le fichier ou l'assembly 'System.Web.Http.WebHost, Version = 4.0.0. 0, Culture = neutral, PublicKeyToken = 31bf3856ad364e35 'ou l'une de ses dépendances. Le système ne peut pas trouver le fichier spécifié.] System.Web.HttpRuntime.FirstRequestInit (contexte HttpContext) +579 System.Web.HttpRuntime.EnsureFirstRequestInit (contexte HttpContext) +112 System.Web.HttpRuntime.ProcessRequestNotificationPrivate (IIS7WorkerRequest wr, HttpContext contexte) +716
J'ai essayé de trouver ce fichier (System.Web.Http.WebHost) dans le répertoire du framework mais je n'arrive pas à trouver ce fichier spécifique.
Je me demande Est-ce que ce fichier doit nécessairement être disponible physiquement?
J'ai également essayé de définir System.Web.Http DLL à "CopyLocal='True'"
mais ne fonctionnait pas.
J'ai déjà essayé de chercher une situation similaire/des questions-réponses ici, mais je n'ai pas vraiment trouvé de direction.
Je serais reconnaissant si quelqu'un pouvait fournir une direction ici à mon problème.
Utilisez-vous 'API Web 2.2'? Dans ce cas, 'System.Web.Http.WebHost' fait partie du paquet nuget' Microsoft.AspNet.WebApi.WebHost'. S'il vous plaît envisager de réinstaller ce paquet par 'Install-Package Microsoft.AspNet.WebApi.WebHost' –
@ AjayAradhya: Je ne suis pas sûr. Dans mes packages.config la ligne indique: ' ' –
Binoy
Après avoir passé du bon temps sur la recherche, je pensais aller par approche manuelle. Sur la machine locale où j'ai Visual Studio, j'ai trouvé une référence de DLL 'System.Web.Http.WebHost' dans le répertoire" Packages ". À partir de ce dossier, j'ai copié le fichier .dll et je l'ai juste collé dans le répertoire bin du serveur. Je suis sûr qu'il doit y avoir le moyen de "réinstaller" de tels paquets NuGet en dehors/sans studio visuel. Mais pour l'instant j'ai fait ce travail. Je posterai ma réponse si je trouve ou trouve une telle utilité. – Binoy