2014-03-25 25 views
0

我正在開發使用asp.net mvc的web應用程序。 我有以下要求。如何在Asp.net mvc中的索引方法之前調用其他操作方法?

  • 我的索引方法給了我主頁上的產品列表。
  • 我需要根據當前的瀏覽器分辨率獲取頁面大小。 (即如果1600 * 900頁面大小將是12)
  • 爲此,我打電話給一個Action Method並從它的View中設置頁面大小使用ajax調用通過使用JQuery獲取內部寬度,並且ajax調用將頁面大小保存在會話。
  • 是否有任何方法或方法可以在Index方法之前調用此視圖?然後在Index方法上再次重定向?
+0

您可以爲您的控制器或每個控制器中繼承的應用程序控制器創建構造函數。 – Jamie

回答

1

由於某種原因,它被稱爲請求 - 響應週期。你在說什麼基本上是做一個請求 - 響應 - 響應,這是不可能的。

您可以做的是在實際操作中檢查瀏覽器分辨率是否存在cookie。如果未設置,則通過AJAX調用重定向到該操作。但是,您無法使用AJAX。相反,在那裏,用瀏覽器分辨率設置一個cookie,然後將location.href設置爲用戶應該首先到達的實際URL。這實質上會導致另一個重定向到真正的動作,現在將看到cookie。

但是,我應該注意到,這是非常複雜的,並不實際有效。事實後,如果用戶調整瀏覽器大小?類似於每頁顯示的項目數量,不應取決於屏幕分辨率。如果您想呈現更好的體驗,請使用CSS媒體查詢來自定義分辨率的項目顯示,這樣每個人都可以獲得相同的功能,只是以不同的形式對其顯示進行了優化。

+0

謝謝你的回覆。這對我很有幫助。 –

相關問題