Ich habe versucht, meine NuGet-Pakete zu aktualisieren, um neuere ASP-Versionen zu erhalten .net-Baugruppen (5.2.3). Nach dem Upgrade bekomme ich diesen Fehler beim Kompilieren.Der Typ 'ApiController' existiert sowohl in 'System.Web.Http, Version = 4.0.0.0' als auch 'System.Web.Http, Version = 5.2.3.0'
Ich habe Pakete Ordner gelöscht und neu aufgebaut, ich habe alle Pakete neu installiert, ich habe meine bin gelöscht usw. Nach dem Upgrade auf 5.2.3 kann ich nicht bauen, weil ich diesen Fehler immer wieder bekomme. Die Version der System.Web.Http.dll in meinem bin ist die richtige Version. Diese DLL ist nicht in meinem GAC. Ich bin nicht sicher, wo sonst der Compiler Version 4.0.0.0 dieser DLL findet. Ich habe eine bindingRedirect in meiner web.config.
<dependentAssembly>
<assemblyIdentity name="System.Web.Http" culture="neutral" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
</dependentAssembly>
Ich lief auch Update-Package -ProjectName [ProjectName] -Reinstall
Aufgrund des Vorhandenseins einer anderen referenzierten Assembly mit demselben Namen in Ihrem Projekt ist ein mehrdeutiger Paketname vorhanden. Verwenden Sie 'Update-Paket [Paketname] -Projektname [Projektname] -Reinstall 'in der Package Manager-Konsole. –
Überprüfen Sie Ihre .config-Dateien, um festzustellen, ob dort noch Referenz vorhanden ist. VS wurde möglicherweise nicht richtig bereinigt. – rolls