Помощь в устранении неполадок System.BadImageFormatException:

При отладке проекта .NET 3.5 SP1, который связывается с локальной веб-службой, я получаю исключение

System.BadImageFormatException: «Плохой токен класса»

Конечно, не так много подробностей о том, что вызывает исключение.

Я могу сказать, что метод, в котором это происходит, который находится в том же классе, что и вызывающий, отладчику не удается достичь. Это исключение возникает при вызове метода, связывающегося с веб-службой. У меня есть другие методы связи с веб-службой, так что эта ссылка хороша.

Мои модульные тесты для метода также терпят неудачу с тем же исключением.
Исправление: мои модульные тесты для метода проходят успешно, что еще больше усугубляет путаницу.

Кто-нибудь знает способ отследить это исключение? Я прочитал документацию по классу исключений, что наводит меня на мысль, что одна из сборок неверна в своей версии или есть проблема со сборкой.

Какие еще шаги вы могли бы предложить для устранения неполадок с этим исключением?


person Jeff Schumacher    schedule 18.10.2008    source источник


Ответы (2)


Запуск peverify.exe на сборке может дать полезную диагностику.

http://msdn.microsoft.com/en-us/library/62bwd2yd.aspx

person Brian    schedule 18.10.2008
comment
Спасибо за это предложение, я запустил утилиту peverify.exe на всех сборках, но мне не удалось найти причину этого исключения. Но ты же повел меня проверять разрядность сборок с корфлагами и проверять через IL, чего раньше не делал. Спасибо! - person Jeff Schumacher; 18.10.2008

Оказывается, я получил это исключение из-за какой-то аномалии в MSTest. Перешел на xUnit.net, и с тех пор все в порядке.

person Jeff Schumacher    schedule 26.10.2008