Ошибка: не удалось загрузить файл или сборку в Linux

#c# #linux #.net-core

#c# #linux #.net-core

Вопрос:

Я использую Ubuntu 20.04 и пытаюсь запустить.Веб-приложение NETCore. Я использую команду sudo /usr/bin/dotnet /var/netcore/publish/App.dll , где App.dll это приложение.

Я получаю сообщение об ошибке:

Необработанное исключение. System.IO.FileLoadException: не удалось загрузить файл или сборку ‘Microsoft.Расширения.Хостинг.Абстракции, версия = 3.1.0.0, Культура = нейтральная, PublicKeyToken=adb9793829ddae60’. Определение манифеста найденной сборки не соответствует ссылке на сборку. (0x80131040) Имя файла: ‘Microsoft.Расширения.Хостинг.Абстракции, версия = 3.1.0.0, Культура = нейтральная, PublicKeyToken= adb9793829ddae60’

Есть идеи?

Комментарии:

1. Версия не соответствует. Самый простой способ решения — использовать VS Solution Explorer. Удалите ссылку и добавьте снова. Версия будет обновлена в файле csproj с правильной версией.

2. Версии те же (3.1.0.0), и я не могу найти никакой прямой ссылки в VS Solution Explorer

3. Кто-то либо вручную поместил DLL в папку bin, либо скопирован из объектов. Вы можете открыть csproj с помощью блокнота, чтобы посмотреть, как он копируется и добавляется в проект.