Ich schreibe eine Azure-Funktion, die 2 nugget-Pakete (A und B) aus meinem privaten Feed verwendet. Paket A verwendet Dapper Version 1.50.2 direkt und Paket B verwendet Dapper.SimpleCrud 1.13.0, das eine Abhängigkeit von Dapper Version [1.42.0, 2.0.0) hat.Azure-Funktionen mit Nuget-Paketen, die unterschiedliche Versionen derselben Abhängigkeit haben
Innerhalb der Azure-Funktion habe ich project.json hinzugefügt, wo ich Paket A und B und ihre Versionen angeben.
Wenn ich auf die installierten Pakete innerhalb der Azure-Funktion schaue, sehe ich, dass Dapper 1.42.0 und 1.50.2 beide installiert sind. Wenn ich versuche, Methoden in Paket A und B aufzurufen, erhalte ich einen Fehler in den azure-Funktionsprotokollen, der besagt, dass Dapper Version 1.40 nicht gefunden werden konnte. (abhängig davon, wie ich meine project.json eingestellt habe, wäre es entweder Dapper 1.40 oder 1.50, die nicht von Azure Function gefunden werden)
Ich habe eine Testversion des Dapper.SimpleCRUD-Pakets erstellt, wo die Abhängigkeit von dapper von [ 1.50.2, 2.0.0) und alles funktioniert.
Ich habe auch versucht, Dapper 1.50.2 zu project.json in der Hoffnung hinzuzufügen, dass es von Dapper.SimpleCRUD verwendet wird, aber es scheint immer noch in Dapper 1.42 zu ziehen.
Gibt es eine Einstellung, die ich bei Azure-Funktionen vermisse, damit diese Einrichtung funktioniert oder ist dies eine Einschränkung der Azure-Funktionspaketverwaltung?
Vielen Dank für Ihre Hilfe.
Dies scheint ein allgemeines Problem mit Azure-Funktionen und .NET zu sein, noch verfolgt hier: https://github.com/Azure/azure-webjobs-sdk-script/issues/992. Einige Fortschritte wurden gemacht, wie beschrieben unter https://stackoverflow.com/questions/38093972/azure-functions-binding-redirect – Rory