На днях в очередной раз столкнулся с проблемой:  после разворачивания приложения на сервере на нескольких страницах появляется 500-я ошибка. Процесс развертывания приложения проходит следующим образом:

  • разработка и отладка приложения на машине разработчика
  • cборка проекта с помощью aspnet_compiler
  • коирование на тестовый сервер

На этих шагах все работает отлично, а дальше получаем стандартную желтую страницу с ошибкой о невозможности найти нужный класс. В данном случае проблема была со страницей восстановления пароля, на которой находился только компонент PasswordRecovery. Т.к. проект был собрал в release-версии, отадка была сильно затруднена.  Далее выяснилось, что класс, реализующий эту страницу тоже назывался PasswordRecovery. Таким образом, компиляция происходит успешно, но на этапе выполнения происходит исключение. Проблема состоит в том, что в одной области видимости появляется два класса с одним именем, и .net не знает какой класс нужно использовать.

Для решения проблемы следует либо обращатся к классам с указанием namespace (System.Web.UI.WebControls.PasswordRecovery), либо переименовать ваш класс (UserPasswordRecovery). 


Comments

Dmytro Shteflyuk Ukraine

Friday, June 27, 2008 5:45 PM

Dmytro Shteflyuk

Еще можно using SystemPasswordRecoveryControl = System.Web.UI.WebControls.PasswordRecovery;

Volshebnik

Saturday, July 26, 2008 9:44 PM

Volshebnik

Да да да! Так я и сделал!

viktor_z

Thursday, July 31, 2008 2:28 PM

viktor_z

ХЗ, у меня не катит почему то(((

hevac

Friday, August 29, 2008 12:24 PM

hevac

Нормальная вещь, запустилась сразу

Add comment


(Will show your Gravatar icon)

  Country flag

biuquote
  • Comment
  • Preview
Loading