2009-09-07 5 views
1

У меня был веб-проект ASP.NET 2.0. Отлично. Я решил обновить сайт до 3.5. Обновление отлично работало. Я добавил IHttpHandler, что необходимо включить следующую строку в файле web.config:Сервер разработки ASP.NET не хочет обновляться до .NET 3.5

<add verb="GET,POST" path="MyOperation.asmx" type="MyClass"/> 

Эта строка в файле web.config генерирует следующее сообщение об ошибке: "Parser Сообщение об ошибке: Не удалось загрузить тип„MyClass“ . " Это звучит как типичная орфографическая ошибка в имени класса. Но это выглядит не так, я проверил его 1000 раз. Однако, что действительно странно, что в нижней части страницы «желтый экран смерти» говорится:

Информация о версии: Microsoft .NET Framework Версия: 2.0.50727.3082; ASP.NET Версия: 2.0.50727.3082

Это действительно странно. Проект установлен в 3.5. Единственный фрагмент кода, который использует функции 3.5, - это реализация IHttpHandler. Все остальные веб-проекты совместимы с 2.0 и работают без проблем, если я исключаю строку из web.config. Почему это?

[Я не пытался с IIS. Я использую сервер разработки ASP.NET.]

[EDIT] Я должен извиниться, это была глупая проблема правописания, как я ожидал в первом раунде. Моя реализация IHttpHandler была в вложенном классе, а соответствующее имя класса - «OuterClass + NestedClass» и OuterClass.NestedClass, которое я использовал в моем файле конфигурации. Тем не менее, я благодарю всех, кто внес свой вклад, потому что я узнал о новых вещах в версиях CLR!

+0

Если ваш сервер не хочет обновляться, у вас действительно есть очень продвинутый компьютер. Разве это говорило вам, почему это не согласилось? : P Просто шучу, но в прошлый раз, когда я проверил, все между 2.0 и 3.5 совместимо с 2.0. Такое же время исполнения, как говорит Игал. –

ответ

4

Я думаю, вам нужно использовать полное имя типа.

Как:

<add verb="GET,POST" path="MyOperation.asmx" type="Your.Namespace.MyClass, assembly.name"/> 

и ошибка, содержащая информацию о версии 2 является Normall, так как среда CLR не изменилась на 3 и 3.5. единственными изменениями были дополнительные отдельные сборки и синтаксические рекомендации (например, автоматические свойства - это функция компилятора, а не среда исполнения). «NET 4» будет поставляться с новой CLR.

3

Версия не является проблемой (я думаю). .net от 2 до 3.5 sp1 используют одно и то же время работы. Новыми являются только новые библиотеки и компиляторы. Таким образом, с точки зрения asp.net мало что изменилось.

0

Перейдите к объектам проекта. Выберите вкладку «Приложение». Измените целевую структуру на .Net Framework 3.5, если вы еще этого не сделали.

2

ASP.NET 3.5 действительно 2.0 с дополнительными расширениями. Итак, до тех пор, пока на сервере установлено 3.5, сообщение, показывающее, что вы указываете на структуру 2.0, подтверждает, что вы правильно настроили его.

Возможно, проблема в том, что предложил olle, что вам нужно полное имя класса, имя сборки.

Также подтвердите, что у вас есть dll в папке/bin и что оно помечено как приложение, если вы не работаете с корнем вашего сайта.

 Смежные вопросы

  • Нет связанных вопросов^_^