2011-12-20 64 views
0

我想在我的應用程序中使用本地SQL Server CE;我讀過使用EF代碼 - 首先我可以讓系統從POCO類開始創建數據庫;我已經使用NuGet配置EFCodeFirst.SqlServerCompact,但是我不清楚我如何在我的WPF應用程序中使用它....任何人都可以幫助我?我可以在WPF上使用EF代碼優先與SQL Server CE嗎?

回答

3

它並不真的不管你是否使用默認的WPF風格的應用程序開發或MVVM模式,只要你有一個單獨的數據層。

你的數據層應隱藏了所有的DB實現邏輯的,包括從你的代碼的其餘部分創建DB的。

您可以使用Repository模式實現它,但只要它提供業務邏輯需要的數據對象的已知接口和定義即可。

請注意,其他代碼層使用的數據對象不需要與DB使用的POCO對象相同。

如果你的數據層被一個實現了圖層接口的Singleton類訪問,那麼當調用DataLayer.Instance(例如)時,如果找不到數據庫,就可以自動調用數據庫創建代碼。

要記住的重要一點是,只有數據層的內部工作應知道數據來自其餘代碼的位置應該是DB不可知的,只關心它具有它需要的數據,而不是它發生的地方從。

至於實用性here's這是一個代碼優先與EF例子的鏈接。