Вимоги: Проєкт повинен посилатися на багато сторонніх SDK, і деякі з них посилаються на поширені DLL (наприклад, :Newtonsoft.Json.dll), що призведе до того, що весь проєкт посилається на різні версії однієї й тієї ж DLL, і проєкт виведе лише один файл з однаковими результатами, скомпільованими DLL.
Прості проблеми залежності версій DLL можна переглянути нижче:
Посилання:Вхід за гіперпосиланням видно.
Якщо посиланий DLL стосується не лише іншої версії, а й publicKeyToken, як це слід вирішити? У випадку Newtonsoft.Json.dll проєкт посилається на файл з іншою версією та publicKeyToken.
- Newtonsoft.Json.dll, версія:12.0.0.0,publicKeyToken:30ad4fe6b2a6aeed - Newtonsoft.Json.dll,version:4.0.0.0,publicKeyToken:null
Просте налаштування перенаправлення посилання не вирішує проблему, конфігурація виглядає так:
Коли ви викликаєте сторонній SDK-метод, що залежить від Newtonsoft.Json версії 4.0.0.0, ви отримаєте таку помилку:
Не вдалося завантажити файл або асемблер "Newtonsoft.Json, Version=4.0.0.0, Culture=neutral, PublicKeyToken=null" або одну з його залежностей. Визначення маніфеста знайденої асамблеї не відповідає посиланням на асемблю. (Виняток із HRESULT:0x80131040) Рішення: створіть нову папку JSON4 у папці bin, помістіть версію Newtonsoft.Json.dll 4.0.0.0 під цю папку та змініть конфігурацію наступним чином:
(Кінець)
|