В моем приложении ASP.NET Core есть следующий код для обработки ошибок:
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
app.UseExceptionHandler(builder =>
{
builder.Run(async context =>
{
context.Response.StatusCode = (int)HttpStatusCode.InternalServerError;
var loggingService = context.RequestServices.GetService<ILoggingService>();
var exceptionFeature = context.Features.Get<IExceptionHandlerFeature>();
if (exceptionFeature != null)
{
Exception ex = exceptionFeature.Error;
Console.Error.WriteLine(ex.Message + " " + ex.StackTrace);
loggingService.Error(ex);
}
});
}
Однако, когда я нахожусь в среде Development
, я бы хотел использовать UseDeveloperExceptionPage()
инастраиваемая обработка ошибок для регистрации в БД.Но похоже, что это не работает (UseExceptionHandler()
отключает функциональность UseDeveloperExceptionPage()
).
Есть ли способ достичь этого без написания UseDeveloperExceptionPage()
кода формы нуля?