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