Ich habe eine .NET Standard 1.4-Klassenbibliothek, die auf das System.ComponentModel.Annotations (4.3.0) NuGet-Paket verweist.Konnte Datei oder Assembly nicht laden 'System.ComponentModel.Annotations, Version = 4.1.0.0
Ich verweise dann diese Klassenbibliothek von einem .NET Framework 4.6.2-Testprojekt. Es baut in Ordnung, aber zur Laufzeit bekomme ich folgende Fehlermeldung:
System.IO.FileLoadException occurred HResult=0x80131040
Message=Could not load file or assembly 'System.ComponentModel.Annotations, Version=4.1.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
Ich habe versucht, einen Verweis auf die System.ComponentModel.Annotations Zugabe (4.3.0) NuGet Paket aus dem net462 Projekt, aber das hat nicht machen jede Differenz.
Ich habe versucht, einen Verweis auf die .NET-Standard-Bibliothek aus dem net462-Projekt, aber immer noch kein Glück.
Fehle ich hier etwas? Ist das ein bekannter Fehler, wenn ja, gibt es eine Arbeit?
Jede Hilfe wird sehr geschätzt!
Bindung<PropertyGroup>
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
<GenerateBindingRedirectsOutputType>true</GenerateBindingRedirectsOutputType>
</PropertyGroup>
Dies zwingt den Build-Prozess eine .dll.config
Datei im Ausgabeverzeichnis mit dem nötigen zu erstellen:
Verwenden Sie das Attribut [bindingRedirect in app.config] (https://msdn.microsoft.com/en-us/library/7wd6ex19.aspx), um die Verwendung der Bibliothek 4.3.0.0 zu erzwingen – magicandre1981
Für alle fehlende Version = 4.2 .0.0: Das Installieren von System.ComponentModel.Annotations 4.4.1 von NuGet Gallery hat es für mich repariert. – user764754
@ user764754 Vielen Dank! – k3flo