System.BadImageFormatException: не удалось загрузить файл или сборку... неправильный формат при попытке установить службу с помощью installutil.exe
Я знаю, что я собираюсь задать вопрос duplicate, но мой сценарий совершенно другой, я думаю, потому что, когда я иду на модульное тестирование с помощью инструмента nunit моей программы, в NUnit произошла ошибка
"NewTest.testtest(TestFixtureSetUp):
SetUp: System.BadImageFormatException: Не удалось загрузить файл или сборку "AUTO_REPAIR, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = null" или одну из его зависимостей. Была сделана попытка загрузить программу с неправильным форматом. "
Интересно, почему эта ошибка происходит с этим инструментом?
я уверен, что у меня нет ошибок в проекте или в любом случае.
Пожалуйста, помогите мне.
вот изображение этой ошибки
![enter image description here]()
Ответы
Ответ 1
Существует два способа решить эту ошибку:
- Установите целевую платформу платформы x86 для своего проекта в визуальной студии (щелкните правой кнопкой мыши по вашему решению, а затем перейдите к свойствам, затем вы найдете вариант сборки, и когда вы нажмете на сборку, вы найдете целевую платформу платформы).
После того, как вы установите целевую платформу x86, попробуйте выполнить unit test с помощью nunit.
или
- Просто найдите nunit-x86.exe в папке bin вашей папки nunit и просто запустите этот exe файл, и вы больше не увидите никаких исключений:)
Ответ 2
BadFormatException возникает, когда вы пытаетесь загрузить сборку x86 в 64-битном процессе или наоборот. Согласно документации NUnit (http://www.nunit.org/index.php?p=nunit-gui&r=2.4.2, бегун по умолчанию компилируется как AnyCPU, что означает его 64-битный процесс на 64-битной машине. Если одна из ваших сборок или любая из ее зависимостей напрямую скомпилирована для x86, вы получите это исключение.
Переключитесь на Nunit-x86 или Nunit-console-x86.exe, и все должно загрузиться правильно.
Ответ 3
Принять участие в комментарии Ammar. Не полагайтесь исключительно на то, что Configuration Manager говорит вам, что это активная платформа. Перейдите в свойства проекта и проверьте там тоже, вот что такое реальная платформа для проекта
![enter image description here]()