Перенаправление привязки сборки в функциях Azure - PullRequest
0 голосов
/ 03 мая 2018

Я создал функцию Azure, и, как мы знаем, в ней есть пакет Microsoft.NET.Sdk.Functions 1.0.8, который зависит от Newtonsoft.Json 9.0.1.

Я добавил другую библиотеку классов в качестве ссылки на эту функцию Azure, которая зависит от Newtonsoft.Json 11.0.2.

Во время выполнения я получаю сообщение об ошибке «FileNotFoundException: не удалось загрузить файл или сборку» Newtonsoft.Json, версия = 11.0.0.0, Culture = нейтральный, PublicKeyToken = 30ad4fe6b2a6aeed 'или одна из его зависимостей. Системе не удается найти указанный файл. "

Это похоже на проблему, связанную с перенаправлениями привязки сборки, поэтому я следую этому решению, чтобы попытаться исправить https://codopia.wordpress.com/2017/07/21/how-to-fix-the-assembly-binding-redirect-problem-in-azure-functions/ Но это тоже не помогает.

Есть ли какой-то шаг, который я пропускаю, или какой-либо другой обходной путь для такого рода случаев? Помощь приветствуется.

1 Ответ

0 голосов
/ 04 мая 2018

Функции Azure не имеют понятия о перенаправлении привязки. Если ваше приложение функций имеет ссылку на библиотеку, которая зависит от конкретной версии (скажем, версии x) Newtonsoft.Json, а Microsoft.Net.Sdk.Functions имеет неявную зависимость от другой версии (скажем, версии y), в качестве обходного пути вы можете добавить явную ссылку до версии x Newtonsoft.Json в вашем приложении функций, запустив ее в консоли диспетчера пакетов.

Install-Package Newtonsoft.Json -Version x

Это заставит зависимость вашего проекта показывать желтый предупреждающий знак, но вы не получите ошибку времени выполнения.

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...