Когда я go на свойства этой ссылки на DLL в Visual Studio Solution Explorer, он показывает версию 4.2.0.1, на которую ссылается xxxxxx
Во-первых, я думаю, у вас есть небольшое недопонимание о DLL version
и the nuget version
.
version 4.5.3
- это просто номер версии пакета System.Threading.Tasks.Extensions
, а version 4.2.0.1
- это просто System.Threading.Tasks.Extensions.dll
(существует в пакете nuget). Они не являются концепцией вообще. И вы можете увидеть такие библиотеки в файле xxx.csproj
.
Версия пакета nuget содержит несколько конкурирующих DLLS для различных структур проекта, которые будет автоматически установлен в соответствующий проект в соответствии с механизмом nuget.
DLL ад - Не удалось загрузить файл или сборку System.Threading.Tasks.Extensions
Как вы сказали , у вас есть пакет nuget под названием System.Reactive version 4.3.2
, который зависит от System.Threading.Tasks.Extensions 4.5.3
в вашем проекте. Вы можете видеть это:
И из вашего журнала ошибок кажется, что проект ссылается на System.Threading.Tasks.Extensions.dll 4.2.0.0
, которого он не существует в пакете nuget System.Threading.Tasks.Extensions 4.5.3
и должно быть System.Threading.Tasks.Extensions.dll 4.2.0.1
. Не уверен, что вы изменили номер версии или причину проекта.
Вы можете проверить следующие шаги:
Решение
1 ) убедитесь, что System.Threading.Tasks.Extensions
версия 4.5.3
в packages.config
файле.
2) убедитесь, что вы изменили версию dll на 4.2.0.1
в xxx.csproj
file
3) Прежде чем переустанавливать их, сначала очистите кэш Nuget , затем запустите update-Package -reinstall
в Tools
-> Nuget Package Manager
- > Package Manager Console
для переустановки пакетов
4) создайте новый проект framework 4.7.2 и затем обратитесь к этим пакетам nuget, чтобы проверить, вызвано ли оно вашим проектом.