Перенаправление сборки не указывает на ожидаемую сборку - PullRequest
0 голосов
/ 02 ноября 2018

Я пытаюсь выполнить перенаправление сборки следующим образом:

  <dependentAssembly>
    <assemblyIdentity name="System.Net.Http" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-4.2.0.0" newVersion="4.2.0.0" />
  </dependentAssembly>

Но я получаю следующее исключение во время выполнения:

Inner Exception 1:
MissingMethodException: Method not found: 'System.Net.Http.HttpClient 
ServiceStack.JsonHttpClient.GetHttpClient()'.

Я попытался найти модули, загруженные во время выполнения, и обнаружил следующее:

enter image description here

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

Проект, который я создаю, создает файл .dll, и он ссылается на несколько других проектов со сборкой x86. Он основан на .NET 4.6.1 и не может быть обновлен из-за других неизбежных зависимостей. Очистка и восстановление всего проекта не помогли.

Есть еще идеи?

------------------------------- РЕДАКТИРОВАТЬ --------------- -----------------------

Сервисный стек также загружается без дубликата, который у меня есть в System.Net.Http. Проверьте следующий снимок экрана: enter image description here

...