Альтернативой пользовательской странице обработчика исключений является предоставление лямбда-выражения UseExceptionHandler. Использование лямбда-выражения позволяет получить доступ к пути запроса, допустившего ошибку, до возврата ответа.
Вот пример использования лямбды для обработки исключений:
app.UseExceptionHandler(errorApp =>
{
errorApp.Run(async context =>
{
var exceptionHandlerPathFeature =
context.Features.Get<IExceptionHandlerPathFeature>();
// Use exceptionHandlerPathFeature to process the exception (for example,
// logging), but do NOT expose sensitive error information directly to
// the client.
if (exceptionHandlerPathFeature.Path.Contains("/Administration/"))
{
context.Response.Redirect("/Administration/Error");
}
if(exceptionHandlerPathFeature.Path.Contains("/Production/"))
{
context.Response.Redirect("/Production/Error");
}
});
});
Можно сослаться на Обработка ошибок в ASP.NET Core: обработчик исключений, лямбда .