C# web api 中過濾器的使用


一、開篇

  Fiter在Web API中經常會用到,主要用於記錄日志,安全驗證,全局錯誤處理等;Web API提供兩種過濾器的基本類型:actionfilterattribute,exceptionfilterattribute;兩個類都是抽象類,actionfilter主要實現執行請求方法體之前(覆蓋基類方法OnActionExecuting),和之后的事件處理(覆蓋基類方法OnActionExecuted);exceptionfilter主要實現觸發異常方法(覆蓋基類方法OnException)。

  之前在寫api的時候用的log4net,需要在每個控制器或者方法中添加寫日志的方法,后來了解到有個過濾器這個東東,都寫在過濾器中很方便。

二、ExceptionFiter的使用

  2.1、新建一個類實現ExceptionFilter類,重寫OnException方法。

  

   2.2、在控制器中使用

  

  2.3、效果

  

三、ExceptionFilterAttribute的使用

  3.1、新建一個類實現ExceptionFilterAttribute

  

   3.2、在需要使用的控制器或者action前面加上特性即可

  

四、 在mvc中和web api添加全局的控制有區別

  在webapi中是在WebApiConfig中添加config.Filters.Add(new xxxxx);

  在mvc項目中是在FilterConfig中添加 filters.Add(new xxxx());

五、在mvc中使用過濾器

  

    

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM