2016-11-26 34 views
6

私のプライベートフィードから2つのnugetパッケージ(AとB)を使用しているAzure関数を書いています。パッケージAはDapperバージョン1.50.2を直接使用し、パッケージBはDapperバージョン[1.42.0、2.0.0]に依存するDapper.SimpleCrud 1.13.0を使用します。同じ依存関係の異なるバージョンを持つnugetパッケージのazure関数

Azureの機能の中で、私がpackage AとBとそのバージョンを指定するproject.jsonを追加しました。

Azure関数内にインストールされているパッケージを見ると、Dapper 1.42.0と1.50.2の両方がインストールされています。パッケージAとBのメソッドを呼び出そうとすると、Azure関数のログにDapperバージョン1.40が見つからないというエラーが表示されます。 (project.jsonをどのように設定したかによって、Azure関数では見つからないDapper 1.40または1.50のいずれかになります)

Dapper.SimpleCRUDパッケージのテストバージョンを作成しました。ここで、dapperへの依存関係は[ 1.50.2、2.0.0)、すべてのものが動作します。

私はDapper.SimpleCRUDによって使用されることを期待してproject.jsonにDapper 1.50.2を追加しようとしましたが、それでもDapper 1.42を引き込むようです。

この設定が機能するには、Azure関数に欠けている設定がありますか?これはAzure関数パッケージ管理の制限ですか?

ご協力いただきありがとうございます。

+0

これはAzure関数と.NETの一般的な問題ですが、ここでも追跡されています:https://github.com/Azure/azure-webjobs-sdk-script/issues/992 https://stackoverflow.com/questions/38093972/azure-functions-binding-redirect – Rory

答えて

4

私はまだ紺色の機能でバインディングリダイレクトを行う良い方法を見つけていないという問題(AFAIKは10月2106日でさえも)のようです。

同じ依存関係(異なるバージョン)の2つの異なるナゲットパッケージを使用して、私のazure関数で同様の問題が発生しました。

ここで尋ねた同様の質問がありました:Azure Functions binding redirect

私はバインディングリダイレクトを回避するためにnugetsの少なくとも可能な数を維持することになったが。あなたのプロジェクトでこれが可能でない場合は、紺色の機能がこれをサポートするまで、webjobs(少なくとも短期的な解決策として)を試してみてください。

+0

お返事ありがとうございます。これは定期的に発生する問題です。私は昨日すべてのことをこの問題を解決しようとして過ごし、Dapper.SimpleCRUDの私のバージョンを作ってくれました。今日私は、最小限の[1.42]を持つオリジナルのDapper.SimpleCRUDに依存関係をロールバックし、アプリケーションサービスを再開し、すべてのものが正常に動作します(Dapper.SimpleCRUDを使用する呼び出しとDapper 1.50.2を使用する他のパッケージを呼び出します)。 ... – Nish

+2

Nish、引き続き問題が発生した場合は、GitHub(https://github.com/Azure/azure-webjobs-sdk-script)の詳細な手順や説明を参考にして調査してください。また、いくつかの質問を明確にするのに役立つかもしれないAzure関数の管理された依存関係のオプションと振る舞いに関する詳細な情報を持つ(期限切れの)投稿に取り組んでいます。 –

関連する問題