MVC的過濾器

2022-01-15 15:17:13 字數 1270 閱讀 9393

過濾器分類:

action過濾器    view結果渲染過濾器     全域性錯誤異常過濾器    身份驗證過濾器

1.action過濾器:在action執行之前和執行之後分別幹一些事   介面:(iactionfilter)

2.view結果渲染過濾器:   介面:(iactionfilter)

[attributeusage(attributetargets.all, allowmultiple = true, inherited = true)]

public class myactionfilterattribute :actionfilterattribute

//在action執行之前先執行此方法 重寫方法 執行之前先執行

public override void onactionexecuting(actionexecutingcontext filtercontext)

//public override void onactionexecuted(actionexecutedcontext filtercontext)

public override void onresultexecuting(resultexecutingcontext filtercontext)

public override void onresultexecuted(resultexecutedcontext filtercontext)

}

怎麼去呼叫呢?

[myactionfilter(name = "home/index")]

public actionresult index()

注意:類上面的標籤可以作用到所有控制器上的方法

所有的控制器都需要的話(全域性過濾器):

}呼叫:

控制器和類中的內容都顯示:

[attributeusage(attributetargets.all, allowmultiple = true, inherited = true)]

public class myactionfilterattribute :actionfilterattribute

MVC過濾器 過濾器執行順序

如果某個action過濾器運用了多種過濾器,那麼過濾器的執行順序是如何呢?即執行順序是 授權過濾器 動作過濾器 結果過濾器 異常過濾器。注意 如果actionfilter過濾器執行過程中發生了異常,那麼會執行exceptionfilter過濾器,不會執行resultfilter過濾器。上圖所示的是正...

Mvc 異常過濾器

mvc自帶乙個異常過濾器即handleerrorattribute 1.首先要進行配置web.config defaultredirect表示需要跳轉的錯誤頁面,mode需設定為 on或者 remoteonly.注 handleerror只處理伺服器500錯誤,404 400等這些錯誤不進行處理,如...

MVC和Web API 過濾器Filter

mvc和web api filter 過濾器 asp.net mvc 支援下面型別的操作篩選器 授權篩選器。這些篩選器用於實現 iauthorizationfilter 和做出關於是否執行操作方法 如執行身份驗證或驗證請求的屬性 的安全決策。authorizeattribute 類和requireh...