Versionskonflikt zwischen List & Label-Installation und NuGet-Paket beheben

Click here for the English article.

Ausgangslage

Bei Verwendung der NuGet-Pakete von List & Label kann u. U. in der Entwicklungsumgebung eine Warnung angezeigt werden, dass die Versionen der List & Label-Installation und des verwendeten NuGet-Pakets nicht zusammenpassen.

Beispiel
Your List & Label installation 31.003 and the NuGet Package 31.2.0 do not match. We strongly recommend to install/use both the List & Label Service Pack Release 31.002 and the corresponding NuGet Package version 31.2.0 to ensure all .NET assemblies and native core modules are from the same release.

Ursache

Die .NET-Assemblies der NuGet-Pakete rufen Funktionen aus den nativen Core-Modulen (unmanaged-DLLs) aus dem List & Label-Installationsverzeichnis auf. Zwischen den verschiedenen Releases/Servicepacks können sich jedoch interne Funktionssignaturen, Strukturen etc. ändern, so dass es zu Laufzeitfehlern, Abstürzen oder Verhaltensänderungen kommen kann, wenn die .NET-Assemblies und die nativen Core-Module nicht aus derselben Version stammen.

Lösung

Damit die Warnung nicht mehr angezeigt wird und alle List & Label-Komponenten wieder denselben Versionsstand aufweisen, kann entweder das passende Servicepack oder das passende NuGet-Paket installiert werden.

Hinweis
Das unterschiedliche Versionsnummernformat kann dabei ignoriert werden, wichtig ist die Minor-Version, d. h. also bspw. die 2, wenn das NuGet-Paket die Version 31.2.0 hat und das Servicepack die Version 31.002.

Außerdem sollten ggf. im Projekt zusätzlich eingebundene lokale DLL-Referenzen aus dem List & Label-Installationsverzeichnis entfernt und durch die passenden NuGet-Pakete ersetzt werden.