gpt4 book ai didi

asp.net-core-2.0 - ASP.Net Core UseExceptionHandler 不处理所有异常?

转载 作者:行者123 更新时间:2023-12-04 15:30:01 27 4
gpt4 key购买 nike

我有一个 ASP.Net Core 2 web api 项目。
我已将以下内容添加到 Configure我的 Startup.cs 文件中的方法app.UseExceptionHandler();
我在 Postman 测试中注意到我得到了“无法获得响应”的结果。
服务器端日志显示该错误与我的数据库中缺少表有关。这很好,我可以解决这个问题。但我的问题是为什么服务器不会返回 500 内部服务器错误?为什么它会死,并且根本不回复 Postman?

因此,在我的 Controller 中,我故意抛出一个异常来测试处理程序,并从 Postman 调用 URL,实际上,我得到了一个 500 内部服务器错误响应,正如预期的那样。

为什么 ExceptionHandler 中间件没有处理从 EFCore 抛出的“更深层次”错误,并使我的应用程序崩溃?我错过了什么吗?

最佳答案

在您的 startup.cs 中,移动 UseMvc()标记到管道的底部,即

public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
...
app.UseExceptionHandler();
app.UseMvcWithDefaultRoute();
}

就我而言,当浏览器启动的路由不存在时,请求管道在启动时出错。在这种情况下,我的 app.UseExceptionHandler() 在 app.UseMvc() 之前没有执行。

关于asp.net-core-2.0 - ASP.Net Core UseExceptionHandler 不处理所有异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49026179/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com