好吧,所以我正在構建一個頁面,最終將根據請求主機進行品牌化。例如,如果用戶瀏覽www.firsthost.com,我的過濾器會檢測到此信息並將其設置爲品牌1.如果用戶瀏覽到www.secondhost.com,我的過濾器會檢測到它並將其設置爲品牌2.這些品牌ID用於動態選擇頁面上的資產和選項。如何根據請求中的主機標記網頁?
目前,我正在做的是在ActionFilter中做出這個決定,並將品牌ID填充到會話中,然後在控制器中引用它,我使用它來構建具有正確引用和資源的視圖模型。我不喜歡這個,就是我必須創建一個方法,將該品牌ID從會話中挖掘出來,並用控制器中的每個動作調用它,而且我真的不喜歡將它填充到會話中的想法無論是。很明顯,我想要隱藏用戶,所以我真的不想把它放入cookie中。
有沒有人接觸過這個?你是如何解決這個問題的?我只是尋找一種更安全的方式來實現這個功能,如果框架已經有了一些可以幫助的功能,我寧願使用它。
你知道嗎,我甚至沒有注意到我在那裏有一個控制器參考。我測試它工作。讓我再玩一遍,確保它堅實。謝謝! – Sinaesthetic
不客氣:)您應該可以加載過濾器中的所有品牌數據,並完全忽略您的行爲中的品牌。 ViewBag上的品牌數據將直接發送到視圖。 – 2013-04-02 00:54:39
哦,我不確定我想那麼做。無法爲所有頁面加載品牌特定資產。儘管它適用於大多數情況,但某些頁面可能比其他頁面顯示的要多得多,我不想在每次過濾器被擊中時加載它們。實際上,這些視圖模型是根據需要創建的。 – Sinaesthetic