Box API .dll не запрашивает правильную версию Newtonsoft.Json - PullRequest
0 голосов
/ 01 ноября 2019

Таким образом, чтобы завершить заголовок, более конкретно одна из зависимостей API box.v2 не запрашивает правильную версию Newtonsoft.Json.

Все зависимости API:

  • Newtonsoft.Json (> = 10.0.3)
  • System.IdentityModel.Tokens.Jwt (> = 5.1.4)
  • BouncyCastle (> = 1.8.1)

Элемент, выдавший исключение:

  • Инициализатор типа для 'System.IdentityModel.Tokens.Jwt.JsonExtensions' вызвал исключение.

Ошибка:

Не удалось загрузить файл или сборку 'Newtonsoft.Json, Версия = 9.0.0.0, Культура = нейтральная, PublicKeyToken = 30ad4fe6b2a6aeed' или одна из ее зависимостей. Определение манифеста обнаруженной сборки не соответствует ссылке на сборку. (Исключение из HRESULT: 0x80131040)

На данный момент я потерял около 110%. Я испробовал все, что в моих силах, но не повезло. Чтобы немного рассказать об этом и дать ссылку на все, что я пробовал:

  1. У меня есть консольное приложение, в котором код изначально встроен в тот же сервер, использующий тот же пакет NuGet. Это приложение работает просто отлично.
  2. Я попытался удалить пакет NuGet и просто добавить .dll вручную и ссылаться на них, это вызвало ту же ошибку.
  3. Я убедился, что файл App.Config перенаправляет все более низкие версии пакета на новую версию Newtonsoft.

Строка кода, которая выдает эту ошибку, находится здесь, она прерывается при вызове сеанса (var client):

var session = new BoxJWTAuth(BoxConfig.CreateFromJsonFile(fs)); //create a service account session object using the jwt
var client = session.AdminClient(session.AdminToken(), userId);  //start the session call

Ссылки на другие решения, которые я пытался безрезультатно(только во избежание повторения).
Определение манифеста обнаруженных сборок не соответствует ссылке на сборку Определение манифеста обнаруженных сборок с именем xxx dll не соответствует ссылке на сборку JWT не может декодировать заголовок как строку в кодировке base64url Как использовать конфигурацию приложения в visual studio c net

...