2013-06-02 80 views
0

我在我的C#應用​​程序(WPF)中使用SQLite本地數據庫。臨時存儲來自數據庫的數據的位置?

不應該打開數據庫連接一次,並在開始時加載所有數據(而不是每次需要從數據庫獲取一點數據時打開連接)?

我的問題是數據應該存儲在應用程序中。

我應該創建一個靜態類,它包含多維數組或多維列表中的所有信息。還是有更好的方式來存儲信息?

+0

你會被所有的數據加載到內存中擊敗數據庫的目的。此外,使用靜態類保存數據會在多線程環境中遇到很多併發問題... – rae1

+0

@ rae1n那麼最好的方法是什麼?爲了保持SQLite數據庫始終打開? –

回答

0

看看數據集和visual studio的數據集設計工具。

如果你使用這種方法,你可以很好的功能中獲益,如tghe數據序列化到XML等等,

1

你的問題不能正確回答不知道你的業務邏輯。 但是,我可以告訴你,大多數應用程序不會將整個數據庫加載到對象中,而是在需要數據時查詢數據。

對於您的問題的其他部分,爲什麼不創建一個ADO.Net數據模型?如果您使用的是vs 2010,則可以使用模板,只需在打開新項目後在搜索框中鍵入模型即可。

+0

哦,好的。謝謝。對ADO.Net一無所知。它與SQLite一起工作良好嗎? –

0

是你最初的解決方案是確定的,爲了防止您的應用程序和數據庫之間的流量,你應該保存你的數據在內存中,如你提到過,但你可以從中受益緩存優勢的屬性格式。

如果您使用的是.Net Framework 4.0,則可以利用System.Runtime.Caching,否則,您應該熟悉企業應用程序塊5.0或更低版本。

Related Post

System.Runtime.Caching-MSDN