2010-08-03 58 views
0

單擊編輯按鈕時,我的Gridview正在刷新其數據源。我怎樣才能防止這種情況發生?當沒有很多記錄時,這不是什麼大問題,但是當有很多記錄需要一些時間時。數據已經加載,因此編輯按鈕不需要重新加載數據。編輯按鈕是一個模板編輯按鈕,我正在使用連接到Oracle數據庫的SQL數據源。 SQL數據源使用指向下拉列表的控件參數。單擊編輯模板鏈接時阻止Gridview上的數據綁定

任何指導,將不勝感激。

回答

1

我看到兩種可能性,都利用了SqlDataSource控件。

在SqlDataSource控件上啓用緩存是我的最愛。雖然這可能並不能真正解決您的問題。儘管如此,將緩存設置爲合理的內容有可能會加快大量頁面的速度,但我喜歡在那裏修改內容。

第二種選擇是處理SqlDataSource控件上的更新事件。在更新事件期間,如果您確定自己受到回發的影響以進行編輯,則可以將e.Cancel設置爲true。這樣做會導致更新被跳過。但是,如果GridView依靠更新來記住先前顯示請求中拉出的項目,這可能實際上不起作用。如果情況確實如此,我最近還沒有足夠確定。如果是這樣,您可能最終不得不在最初的頁面顯示中處理更新的事件,並將結果數據存儲在自動滾動的僞緩存中。你可以看到這可能會變得很複雜...

你使用哪些(以及如何使用它們)取決於用例細節。這應該讓你開始尋找正確的方向,但。

+0

我啓用了緩存,使蝙蝠立刻發生了巨大的變化。編輯數據的用戶不會觸及相同的數據,因此緩存它們應該沒有什麼不同。我保留了原來的默認值。 – 2010-08-04 14:31:27

+0

非常好。我很高興這是一個有效的解決方案。 – 2010-08-04 15:54:32