日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

ASP.NET?MVC過濾器執行順序介紹_實用技巧

作者:.NET開發菜鳥 ? 更新時間: 2022-05-18 編程語言

如果某個Action過濾器運用了多種過濾器,那么過濾器的執行順序是如何呢?

規則一:不同類型的過濾器有一個先后順序

即執行順序是:授權過濾器->動作過濾器->結果過濾器->異常過濾器

注意:如果ActionFilter過濾器執行過程中發生了異常,那么會執行ExceptionFilter過濾器,不會執行ResultFilter過濾器。上圖所示的是正常情況下的執行順序。

規則二:控制器上面的過濾器優先于方法上面的過濾器

即控制器和方法上面都使用了相同的過濾器,那么先執行控制器上面的過濾器。如下圖所示:

規則三、Order屬性可以決定過濾器的先后順序

默認order=-1,即會先執行沒有設置order的過濾器。如下圖所示:

規則四、如果過濾器的類型相同,相同order的過濾器不能確定誰先執行

如下圖所示:

規則五、控制器實現的過濾器接口方法優先執行

上圖中實現了ActionFilter過濾器的OnActionExecuting方法,所以先執行這個方法在執行ActionFilter1。如下圖所示:

原文鏈接:https://www.cnblogs.com/dotnet261010/p/10865719.html

欄目分類
最近更新