Недопустимый маршрут в приложении ASP.net MVC Core 2 показывает пустую страницу

У меня есть новое пустое веб-приложение asp.net MVC Core 2. При переходе на несуществующий маршрут вместо страницы с ошибкой отображается пустая страница.

Сайт настроен с помощью IIS. Я в среде разработки. Я пытался комментировать app.UserExceptionHandler("/Home/Error"); и app.UseDeveloperExceptionPage(); — я пробовал их по отдельности в своей среде. Ничего из этого не имеет значения, просто возвращаются пустые страницы.

Почему не возвращаются ошибки, когда я ввожу неверный маршрут, и как их увидеть?

Я также запускал отладку /Home/Error ActionMethod, чтобы увидеть, был ли он сбит - этого никогда не было. Спасибо.


person niico    schedule 13.04.2018    source источник


Ответы (1)


короткий ответ: https://docs.microsoft.com/en-us/aspnet/core/fundamentals/error-handling?view=aspnetcore-2.0

длинный ответ:

первая строка не попадет в отладчик. есть еще одна конфигурация, которую вы можете использовать специально для кодов ошибок, но требуется немного больше проводки.

app.UseStatusCodePagesWithRedirects("/error/{0}");

целью будет 404.cshtml для ошибки 404, которая не найдена. 401 и т.д. обычно загружаются из общей папки, например.

в вашей ситуации существует ли error.cshtml в домашней папке для домашнего контроллера? было намерение иметь его для приложения типа SPA?

person mvermef    schedule 13.04.2018
comment
Я только что пришел из мира MVC 5 и пытаюсь понять, как работает Core до сборки с нуля. Так что это просто «обычное» серверное веб-приложение в стиле MVC. Являются ли пустые страницы для несуществующих маршрутов дизайном? Так настраиваются шаблоны. - person niico; 14.04.2018
comment
была ли это установка ядра mvc по умолчанию? - person mvermef; 14.04.2018
comment
Да по умолчанию. Вот пример: я настраиваю Elm (пакет типа .core Elmah) — если пользователи переходят на несуществующий маршрут, я хочу, чтобы Elm уведомлял меня — но этого не происходит, потому что не возникает никакой ошибки. - person niico; 14.04.2018
comment
Кроме того, когда пустая страница возвращается с недопустимого маршрута, какой код вызывается? Что именно происходит? - person niico; 14.04.2018
comment
Я, возможно, понял это - во многих примерах есть эта строка в 'app.UseStatusCodePages();' в Configure - и он возвращает 404 (и я предполагаю другие коды состояния). - person niico; 14.04.2018