OnActionExecuted和OnResultExecuting之間的區別是什麼?一旦行動被處理或者在這兩種方法之間發生了什麼事情,他們是否會一個接一個地被解僱?的觀點一樣,引擎的初始化,...OnActionExecuted和OnResultExecuting之間的區別
回答
他們有不同的上下文。
OnActionExecuted
有一個ActionExecutedContext其中您可以查看該操作產生的結果。您還可以查看該操作是否遇到異常,並查看是否處理了該異常。
OnResultExecuting
有一個ResultExecutingContext。這個方法在調用ActionResult
實例之前被調用。您可以檢查該方法的結果,並可能取消執行結果。這通常會導致狀態代碼爲200的空白響應。(您不能在OnActionExecuted方法中執行此操作)。
從ActionFilterAttribute.OnResultExecuting Method
由ASP.NET MVC框架行動結果來執行之前調用。
從ActionFilterAttribute.OnActionExecuted Method
由ASP.NET MVC框架操作方法執行後調用。
因此,onresultexecuting和onresultexecuted實際上調用之前OnActionExecuted?我認爲結果是在操作方法 –
他們一個接一個地打電話。
不可能有任何初始化,因爲你正在執行可能不被渲染視圖中的ActionResult - ActionResults可以自由地做任何他們選擇:返回JSON,返回一個文件,發出一個重定向等
之後執行的。因此,當返回類似重定向的內容時,onresultexecuting不會被調用? –
如果你已經設置了運行OnActionExecuted的代碼,這會在OnActionExecuted之後和OnResultExecuting之前運行,對吧?所以不一定是一個接一個。 – Matthew
- 1. ASP.NET MVC:在ActionFilterAttribute類中,OnActionExecuted和OnResultExecuted之間有什麼區別?
- 2. 之間的〜/和的區別../
- 3. '#','%'和'$'之間的區別
- 4. {!!之間的區別!!}和{{}}
- 5. '+ ='和'= +'之間的區別?
- 6. 「。+」和「。+?」之間的區別
- 7. .eq之間的區別。和==
- 8. #。/和#之間的區別。 ./
- 9. !=和!之間的區別==
- 10. 「%〜dp0」和「。\」之間的區別?
- 11. | =和^ = css之間的區別
- 12. 之間的區別。和#
- 13. ==和case之間的區別?
- 14. 「**/* /」和「** /」之間的區別?
- 15. jQuery - '。'之間的區別和「#」
- 16. 「?1」和「?」之間的區別
- 17. `%in%`和`==`之間的區別
- 18. fmod和%之間的區別
- 19. 之間的區別:+和:+
- 20. 類區域和堆之間的區別
- 21. SPFile和PublishingPage類別之間的區別
- 22. 子類和類別之間的區別?
- 23. System.Timers.Timer Enabled = true和.Start()之間的區別Enabled = true和.Start()之間的區別
- 24. isForeground()和onExposed和onObscured之間的區別
- 25. $ .ajax()和$ .get()和$ .load()之間的區別
- 26. 和intent和setcontentview之間的區別
- 27. Java和C#和.NET之間的區別
- 28. NSthread和NStimer和NSNotifcation之間的區別?
- 29. sys.log()和console.log()和console.error()之間的區別?
- 30. 關注與責任之間的區別(即SRP和SoC之間的區別)?
查看http://stackoverflow.com/questions/10423955/when-exactly-do-onresultexecuted-and-onresultexecuting-fire – Loetn