2009-11-16 59 views
1

有沒有人聽說過EF查詢的異步執行?實體框架中的異步數據加載?

我希望我的項目控制要正確填寫表單時,負載和用戶應該能夠同時其餘項目仍在加載到瀏覽列表中。

也許通過在同一連接中自動拆分項目的大量執行(即每次執行很少的查詢)來執行。

我發佈一個功能建議,Microsoft,請與您的想法分享他們。

回答

1

不想要聽起來像一個廣告,但我注意到,最新的DevExpress網格給出了自己的WPF電網這樣的特徵。基本上你想要首先加載可見項數項,然後在後臺線程中加載其餘項,以便你的UI不會凍結。後臺線程應該一次加載另一個頁面,並使它們可用於UI線程。

這是你想約認真思考,並確保你得到它的權利,或者乾脆買的辛勤工作爲你控制的東西。

+0

後臺線程! 就是這個詞。 – Shimmy 2009-11-16 08:38:50

0

我從你的鏈接中獲取這是一個web應用程序。那是對的嗎?

查詢必須在渲染開始前完成並返回數據。 EF功能在這裏不會幫助你。相反。看看把你的過程分解成幾個可以一次完成的過程。

請記住,如果未完成呈現HTML,則ASP.NET無法向瀏覽器返回響應。

讓我假定您正在執行單個查詢,將結果返回並顯示給頁面。

最好的選擇:頁面你的結果。如果您有4000條記錄,請顯示前50位。如果您向用戶顯示200多條記錄,則他們無法消化那麼多信息。

如果這不符合您的需求,請查看針對50個結果的一個查詢。對剩餘的記錄進行Ajax調用,並從那裏構建UI,大小合理。

+0

我在談論贏取應用程序,感謝您分享您的知識,這確實有幫助。 – Shimmy 2009-11-16 03:27:49

+3

對異步操作的EF支持仍然有價值 - 當我們等待異步數據庫調用時,處理當前請求的線程可以返回到線程池以處理其他請求。但是你是正確的,這不會加速用戶對網頁加載速度的感知。 – 2010-10-28 21:08:46