Генерируемое исключение Вызывает ошибку времени выполнения
Вопрос
Мы разработали веб-сайт, который использует MVC, C # и jQuery.В одном из моих классов контроллеров мы проверяем входные данные от пользователя, и если это не удается, мы создаем исключение, которое обрабатывает параметр ошибки Ajax (он же option).(Мы используем блочный пользовательский интерфейс для отображения сообщения об ошибке.BlockUI - это плагин jQuery, который блокирует экран и отображает окно сообщения.) (Да, в сообщении есть текст без смешных символов или бессмыслицы)
При запуске веб-сайта локально или на сервере мы получаем различные эффекты от генерируемого исключения.
Локально:Соответствующее исключение отображается в BlockUI.Сервер:Вместо сообщения об исключении отображается сообщение "Ошибка времени выполнения".
print(
public ActionResult FailUpdateStatus(string id)
{
string message = Request.Form["message"];
throw new Exception(message);
}
);
Мне удалось запустить веб-сайт на сервере и удаленно подключиться к веб-сайту.Во время отладки исключение выдается, как и должно быть, но пользовательский интерфейс блока показывает ошибку времени выполнения.
Есть какие-нибудь идеи?
Решение
По умолчанию ASP.NET веб-приложения будут скрывать ошибки от удаленных компьютеров, обращающихся к сайту, и будут возвращать только общую "Ошибку времени выполнения".ASP.NET будут отображаться сообщения об ошибках, относящиеся к конкретному приложению, только при локальном доступе к сайту (т.е.если ASP.NET сервер приложений запущен на вашем локальном компьютере для разработки или если вы открываете веб-браузер на сервере, на котором размещено ASP.NET веб-приложение).
Чтобы просмотреть сообщения, сгенерированные на удаленном сервере локальным клиентом, добавьте следующий код в свой файл web.config.
<configuration><system.web><customErrors mode="Off"/></system.web></configuration>