triyul22 Ответов: 1

Исключение badimageformatexception: невозможно загрузить ссылка на сборку на выполнение.


Я бегу asp.net клиент для wcf, но лицо с исключением, с которым я действительно не могу справиться.

BadImageFormatException: Could not load file or assembly 'System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'. Reference assemblies should not be loaded for execution. They can only be loaded in the Reflection-only loader context.


Что я уже пробовал:

Попытался удалить папку bin и перестроить проект, как кто-то рекомендовал, но ничего не изменилось

Sandeep Mewara

Вы используете IIS? Кроме того, какую версию .NET Framework вы используете?

triyul22

Да, IIS, используя версию 3.1.0

1 Ответов

Рейтинг:
2

Dave Kreskowiak

Чаще всего это происходит потому, что ваш код работает как одна архитектура (32 - или 64-разрядная), а библиотека dll, которую вы пытаетесь загрузить, - это другая архитектура .

Код C#, который вы пишете, по deafult, может работать как 32-разрядный, так и 64-разрядный во время выполнения. На вкладке свойства проекта, сборка, цель будет говорить "AnyCPU". Измените его на x86, чтобы заставить ваш код работать только как 32-разрядный.

Возможно, вам придется внести изменения в конфигурацию пула приложений, в котором вы запускаете свой код, а также ожидать запуска 32-разрядного кода. Я не могу точно вспомнить, как называется этот параметр, но он находится в расширенных свойствах пула приложений, который вы используете.


triyul22

Спасибо за ваш совет! Но сейчас браузер, пришлите мне еще одно : ошибка http 500.0 - ANCM внутрипроцессный обработчик ошибок загрузки
Связано ли это с выбранной архитектурой?

Dave Kreskowiak

Погуглите сообщение об ошибке. Я никогда раньше не видел этого сообщения, так что это первое, что я сделаю.