2013-12-11 36 views
1

ASP.NET MVC 4 - 防止自定義錯誤頁

它不會讓我與上面的代碼提交直接訪問,不得不採取截圖。如上所示,我使用customError頁面來處理適當的錯誤。一切正常,例如,當用戶得到一個未處理的異常,在我的本地URL作爲預期正在發生變化: http://localhost/SystemAdministration/Error

不過,我不希望用戶通過鍵入URL以自己的瀏覽器訪問此頁。限制直接訪問這些錯誤頁面的最好方法是什麼,並且只在發生相關錯誤時才顯示它們? 謝謝

+0

您可以創建一個'ActionFilter'來檢查狀態碼是否爲200以外的值。如果是200,那麼重定向到其他地方(主頁可能?)。用這個新創建的過濾器裝飾你的錯誤頁面動作。 – Rohrbs

+0

你好,它看起來像一個很好的建議,但無法得到它的工作。將一個新的自定義ActionFilter附加到我的「NotFound」動作,並在它的onActionExecuting方法上,我的filterContext.RequestContext.HttpContext.Response.StatusCode返回200.我不知何故在請求「NotFound」動作之前獲取statusCode,但是如何? – OzanYukruk

回答

相關問題