在Web中,所有的异常都可以通过中间件实现。在Asp.Net Core5.0中,集线器过滤器将完成这项工作。
但是如何处理Asp.Net核心3.1中的SignalR集线器中的异常呢?在下面的每一种方法中,是否都有编写“尝试/捕捉”的唯一方法?
[Authorize]
public class OrdersHub : BaseHub
{
public async Task GetOrder(Guid requestId, int orderId)
{
try
{
var data =
在使用常规ASP.NET Web API多年之后,我正在为我的新REST API项目使用ASP.NET核心。我在ASP.NET Core Web API中看不到任何处理异常的好方法。我尝试实现了一个异常处理过滤器/属性:
public class ErrorHandlingFilter : ExceptionFilterAttribute
{
public override void OnException(ExceptionContext context)
{
HandleExceptionAsync(context);
context.Exc
在ASP.NET Web API中有什么方法可以将异常标记为在ExceptionFilterAttribute中已处理吗?
我希望使用异常过滤器在方法级别处理异常,并停止传播到全局注册的异常过滤器。
用于控制器操作的筛选器:
public class MethodExceptionFilterAttribute : ExceptionFilterAttribute
{
public override void OnException(HttpActionExecutedContext context)
{
if (context.Exception is Not