У меня есть библиотека классов «CoreComponents», в которую вручную добавлена ссылка «WindowsBase.dll».
problem1
В библиотеку классов я добавляю какой-то метод, использующий некоторый класс в «WindowsBase.dll».
затем я создаю новый проект Nunit и хочу протестировать этот метод. Я добавил ссылку на проект, но когда я нажимаю кнопку отладки и вхожу в метод, появляется ошибка:
System.IO.FileNotFoundException: не удалось загрузить файл или сборка «WindowsBase, версия = 6.0.2.0, культура = нейтральная, PublicKeyToken = 31bf3856ad364e35». Система не может найти указанный файл.
Согласно описанию выше, я думаю, возможно, мне нужно добавить ссылку на Nunit, поэтому я это сделал
problem2
К сожалению, появилась еще одна ошибка:
System. BadImageFormatException: не удалось загрузить файл или сборку «WindowsBase, версия = 6.0.2.0, культура = нейтральная, PublicKeyToken = 31bf3856ad364e35». Эталонные сборки не следует загружать для выполнения. Их можно загрузить только в контексте загрузчика только для отражения. (0x80131058)
System.BadImageFormatException: невозможно загрузить эталонную сборку для выполнения.
Целевым фреймворком является .Net6, как classlib, так и NunitPrj, и "WindowsBase.dll" также копируется из .Net6 WinDeskApp.Ref.
С этой ошибкой я не знаю, что делать.
Я погуглил несколько ответов, например удалить папку «bin», но не работает.
Есть ли здесь решение или что я сделал не так в своей работе.
//-- -------------------------------------------------- --------------
Я изменил целевой фрейм на «Net6-windows», но проблема все еще существует.
coreComponent csproj:
net6.0-windows
enable
enable
lib\WindowsBase.dll
NUnit Prj csproj:
net6.0-windows
enable
enable
false
true
Подробнее здесь: https://stackoverflow.com/questions/766 ... -use-nunit