app.UseStatusCodePagesWithReExecute ( "/ Ошибка / {0}"); не работает в ASP. NET Core 2.2 - PullRequest
0 голосов
/ 02 февраля 2020

Я поместил его в метод Configure в Startup.cs

        app.UseMvc();

        app.UseStatusCodePagesWithReExecute("/Error/{0}");

Затем я создал контроллер следующим образом:

[Route("Error/{statusCode}")]
    public IActionResult HandleErrorCode(int statusCode)
    {
        var statusCodeData = HttpContext.Features.Get<IStatusCodeReExecuteFeature>();

        switch (statusCode)
        {
            case 404:
                ViewBag.ErrorMessage = "Sorry the page you requested could not be found";
                ViewBag.RouteOfException = statusCodeData.OriginalPath;
                break;
            case 500:
                ViewBag.ErrorMessage = "Sorry something went wrong on the server";
                ViewBag.RouteOfException = statusCodeData.OriginalPath;
                break;
        }

        return View();
    }

Когда я перехожу к localhost: порт / не существует

Вздох ... Я получаю пустую страницу.

1 Ответ

0 голосов
/ 02 февраля 2020

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

 I used 

 View("~/Views/Shared/Error.cshtml")

вместо

  View();
...