2017-05-23 2 views
0

Ich versuche, eine Legacy .net 4 Webanwendung zu erstellen, und obwohl der Build erfolgreich ist, wenn ich versuche, die Site zu besuchen, erhalte ichFehlende Assemblys System.Net.Http.Primitives und System.Net.Http.Extensions.dll in Build

 Could not load file or assembly 'System.Net.Http.Primitives' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) 

oder

 Could not load file or assembly 'System.Net.Http.Extensions' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) 

ich kann diese Dateien manuell von Backups hinzufügen und die Website funktioniert, aber wie kann ich den Teil der Build-Ausgabe zu sein?

Nuget auf der Lösung enthält bereits "Microsoft.Net.Http.2.0.20710.0" und "System.Net.Http.2.0.20505.0", aber keiner von diesen enthält die fehlenden DLLs.

Dies muss auf einem separaten Build-Server arbeiten, so dass hart codierte Pfade für zufällige DLLs ein No-No ist.

Der Code ist ziemlich alt und ich kann nirgendwo im Code zu jeder Baugruppe Referenzen sehen.

Es gibt eine andere Dll fehlt im Vergleich zu den Sicherungen, aber ich bin mir nicht sicher, es ist verwandt "System.Web.ApplicationServices.dll", da keine Menge von Google alle Nuget-Pakete, die es enthalten könnte.

+0

Ist es ein MVC 4 app? Es gibt MVC4 msi, die die Bits unter Programmdateiordner und GACs diese Assemblys installiert. Vielleicht möchten Sie überprüfen, ob Ihr Webserver diese msi installiert hat. System.Web.ApplicationServices.dll ist Teil von .Net Framework. – mattfei

+0

Wenn Sie die Anwendung bereitstellen, wird sie über eine zuvor bereitgestellte Site verteilt oder vor der Bereitstellung bereinigt. – Mick

+0

gereinigt, nur die web.config pflegen – rob

Antwort

0

1) Deinstalliertes Web API NuGet-Paket.

2) Installierte Web-API (Beta) NuGet-Paket erneut.

3) Überprüft, dass CSPROJ Datei für alle referenzierten Assemblys enthält, so wird es nehmen Sie es immer von Bin-Ordner,

Verwandte Themen