一、過濾器簡介
1.1、理解什么是過濾器
1、過濾器(Filters)就是向請求處理管道中注入額外的邏輯。提供了一個簡單而優(yōu)雅的方式來實現(xiàn)橫切關(guān)注點。
2、所謂的過濾器(Filters),MVC框架里面的過濾器完全不同于ASP.NET平臺里面的Request.Filters和Response.Filter對象,它們主要是實現(xiàn)請求和響應(yīng)流的傳輸。通常我們所說的過濾器是指MVC框架里面的過濾器。
3、過濾器可以注入一些代碼邏輯到請求處理管道中,是基于C#的Attribute的實現(xiàn)。當(dāng)負(fù)責(zé)調(diào)用Action的類ControllerActionInvoker在調(diào)用執(zhí)行Action的時候會檢查Action上面的Attribute并查看這些Attribute是否實現(xiàn)了指定的接口,以便進(jìn)行額外的代碼注入處理
1.2、理解為什么要使用過濾器
假設(shè)你做了一個小項目,其中某個功能是操作管理用戶信息模塊,有這樣一個需求,對用戶信息管理必須是已通過認(rèn)證的用戶才能操作,我們可以在每一個Action方法里面檢查認(rèn)證請求,如下所示:
網(wǎng)友評論