使用过滤器中的包装中的错误处理,但缺少参考



我正在尝试通过简单地在方法上方添加[Attribute]来处理可以从方法中处理错误的软件包。

在我的包装中我有

public class RequestLogFilter : ExceptionFilterAttribute
{
  public override void OnException(HttpActionExecutedContext filterContext)
  {
     Log(filterContext.Exception);
     base.OnException(filterContext);
  }
  private void Log(Exception exception)
  {
     //log exception here..
  }
}

当我尝试在我的MVC项目中使用它

[RequestLogFilter]
  public async Task<ActionResult> Index()

它说Cannot access internal class here。我的问题是,除了ExceptionFilterAttribute之外,还有其他一些装饰器吗?它说我需要参考system.web.http,但是我在MVC项目中的参考选择中没有。

目标是,如果他们称这种类型的过滤器,它将记录任何例外。

在MVC项目中您应该使用此

public override void OnException(ExceptionContext context)

在WebAPI项目中

 public override void OnException(HttpActionExecutedContext filterContext)

最新更新