2008-09-29 2 views
1

Мы создали веб-сайт, который использует MVC, C# и jQuery. В одном из моих классов контроллеров мы проверяем входные данные от пользователя, и если это не удается, мы генерируем исключение, которое обрабатывает параметр ошибки Ajax (aka option). (Мы используем Block UI для отображения сообщения об ошибке. BlockUI - это плагин jQuery, который блокирует экран и отображает окно сообщения.) (Да, текст сообщения в нем не содержит смешных символов или не имеет смысла)Исключение брошенных причин Ошибка RunTime

При запуске сайта локально или на сервере мы получаем разные эффекты от генерируемого исключения.

Локально: Правильное исключение отображается в BlockUI. Сервер: вместо сообщения об ошибке отображается сообщение «Ошибка выполнения».

print( 
    public ActionResult FailUpdateStatus(string id) 
    { 
     string message = Request.Form["message"]; 

     throw new Exception(message); 
    } 
); 

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

Любые идеи?

ответ

2

По умолчанию веб-приложения ASP.NET будут скрывать ошибки удаленных компьютеров, обращающихся к сайту, и будут возвращать только общую «Ошибка выполнения». ASP.NET будет показывать только сообщения об ошибках приложения при локальном доступе к сайту (т. Е. Если сервер приложений ASP.NET запущен на вашей локальной машине разработки или если вы открываете веб-браузер на сервере, на котором размещен веб-сайт ASP.NET заявление).

Для просмотра сообщений, сгенерированных на удаленном сервере от локального клиента, добавьте следующий код в файл web.config.

<configuration><system.web><customErrors mode="Off"/></system.web></configuration> 
+0

Удивительный. Работал, и это была всего лишь одна простая маленькая линия. благодаря – Brad8118 2008-09-29 19:28:01