【发布时间】:2021-09-16 05:48:28
【问题描述】:
我正在向现有的 ASP.NET Core Web 应用程序添加一些 Web API 方法。这意味着我的新 Web API 控制器将具有属性 [ApiController] 并且调用客户端将期望返回输出为 JSON 而不是常规 HTML。
在另一个项目中,我使用app.UseExceptionHandler(...) 实现了一个自定义异常处理程序,它将响应编码为 JSON,提供有关异常的信息。在这个中,我想这样做,但只有当异常来自[ApiController] 控制器内的操作方法时;否则我仍然想使用app.UseExceptionHandler("/Home/Error");,因为异常来自常规页面并且响应应该是 HTML。
有没有一种方法可以设置异常处理程序,以便它知道异常来自哪里,并相应地呈现响应?
【问题讨论】:
标签: c# json asp.net-core exception asp.net-core-webapi