我有一個MVC的網站使用AD身份驗證,以顯示2011年用戶的CRM的權利,均由其在CRM角色確定也是用戶CRM數據,因此目前OnActionExecuting
方法獲取執行用戶的域名,查詢CRM的角色。如果他們沒有有效的角色,則會返回無效的權限視圖。是否可以緩存我的自定義ActionFilterAttribute的結果?
到CRM的呼叫是緩慢的,並能得到昂貴的,如果它發生的每一個請求。我可以在MVC 3 release notes看到這些過濾器被積極地緩存,但不太清楚這對我意味着什麼。
我希望能夠根據自己的域名緩存用戶的權利,但它聽起來像是可能已經發生?
所以單個ActionFilterAttribute對象可以被創建並通過由不同用戶的多個請求使用? – Daryl 2013-02-12 13:14:25
@Daryl是的,正好。 – ccellar 2013-02-12 13:22:48
我想在處理webfarms時,使用MemoryCache不會對任何用戶特定的數據有好處。您可以創建6個不同的請求,並打6個不同的服務器,所有6個都需要填充緩存。真的,我需要使用會話,因爲它們將在服務器場中的所有服務器之間共享(假設它是以這種方式配置的)。 – Daryl 2013-02-13 15:19:19