2012-08-14 120 views
0

我有一個帶搜索頁面的asp.net應用程序,條件和結果顯示在同一頁面上。 我想保留已填充的搜索頁面的副本,以便稍後將其重新分發給同一用戶,只需單擊其他頁面上的按鈕即可。這是一種「返回搜索」按鈕。 我該怎麼做?如何保留呈現的頁面供以後使用(稍後重新發送)

下面是一些上下文:

搜索準則是由一些基本的控制,其結果是,然後(回發後)在GridView顯示。我也有一個母版頁。就那麼簡單。

現在考慮以下情況:用戶可以通過單擊顯示詳細信息頁面的鏈接來調查結果,並可以通過相關數據在相當多的詳細信息頁面上向下鑽取。如果他/她想回到搜索結果中,他/她需要多次點擊瀏覽器的後退按鈕。

我想在母版頁上提供一個「返回搜索」按鈕,只需點擊一下即可返回到填充的搜索頁面。 注:

  • 我不能使用的瀏覽器歷史記錄以任何方式,因爲當用戶打開的另一個選項卡的詳細視圖之一它也必須工作。
  • 我見過Keeping the Viewstate persistent and retrieve it on demand,但它希望有一個更簡單的解決方案,因爲我的網格分頁,我也有不止一個搜索頁面,我想返回到最後一個使用的頁面。

感謝,馬塞爾

+0

Page OutputCahe? – 2012-08-14 14:37:53

+0

我已經閱讀了一些內容,但我認爲這對我沒有任何作用。最後,我不希望將請求緩存到給定頁面,我希望在單擊按鈕時重新分配另一個頁面。 – Marcel 2012-08-15 07:44:58

回答

0

我可以提供一些合理的方法來解決這個問題,而無需使用專門的asp.net功能,如果它們存在: 1)是否有某種方式保存在GET請求的搜索字符串?所以你可以在移動頁面之間以某種方式保存它? 2)另一種方式是緩存搜索模式(包括所有過濾器或您需要的地方) - 例如在數據庫中,並且包含獲取請求中的一些關鍵字,這將指向此模式。

+0

感謝Quanzi,如果沒有更通用的方法,我會去2)。搜索條件有很多參數。 – Marcel 2012-08-14 14:54:41

+0

希望能幫到你。儘管不要超載數據庫,但請考慮性能。 – Quanzi 2012-08-14 15:01:31