You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

26 lines
919 B
C#

using Microsoft.AspNetCore.Mvc.Authorization;
using Microsoft.AspNetCore.Mvc.Controllers;
using Microsoft.AspNetCore.Mvc.Filters;
namespace Polly8Study.WebApi.Filters
{
/// <summary>
/// 用户取消调用(刷新浏览器等)异常过滤器
/// </summary>
public class OperationCancelledExceptionFilter : IAsyncExceptionFilter
{
public Task OnExceptionAsync(ExceptionContext context)
{
if (context.Exception is OperationCanceledException ex)
{
var controllerActionDescriptor = context.ActionDescriptor as ControllerActionDescriptor;
//context.ActionDescriptor.ContrallerName;
Console.WriteLine($"全局异常过滤器:{controllerActionDescriptor?.ControllerName}{controllerActionDescriptor?.ActionName} 请求,被用户取消!");
}
return Task.CompletedTask;
}
}
}