2013-10-09 26 views
0

我正在使用vs2013開發wpf桌面應用程序。我正在使用sqlite作爲數據庫。爲了對數據庫執行操作,我使用了dbcontext類。現在使用這個過程,我有我的類中的整個數據庫對象,並在這個對象上執行操作(我希望我的理解是正確的)。執行操作後,我會垃圾收集該對象。現在,如果我的分貝大小增長到1GB。使用這個程序是一個好主意嗎?如果不是什麼其他alyernatives?在wpf中使用dbcontext

回答

0

實體框架不會將整個數據庫加載到內存中。 DbContext在您使用時執行SQL查詢,因此您不應該遇到數據庫不斷增長的問題。 雖然我不知道巨大的SQLite數據庫的性能。看一看this question就可以看出來。

+0

好吧,只是再次確認:我有這樣的代碼:使用(VAR上下文=新TeamSystemContext()){ VAR 標籤從=在context.TeamTags 其中a.TeamId == p 選擇; return tags.ToList(); }當我在上下文對象上放置一個斷點並查看它時,它會顯示完整的數據庫對象。所以我認爲整個數據庫都被加載到內存中。我在這裏弄錯了什麼? – androider

+0

上下文*不代表整個數據庫。數據本身只在必要時加載(在代碼中調用'ToList'時)。 –

+0

Ahh Okk,非常感謝! – androider