2012-06-02 205 views
5

我喜歡使用實體框架,原因很多 - 實體設計器的易用性,linq的強大功能和易於綁定。 偶爾我想構建一個簡單的應用程序,它不需要使用數據庫,但仍需要使用數據並將其顯示在屏幕上,網格等中,所以我想創建一個快速EF模型並將其用於這個,但它似乎只是用於本地數據的工作。沒有數據庫的實體框架

我的問題是 - EF有沒有正確的使用本地數據的工作,也許只是序列化/反序列化整個上下文到文件?或者,這樣做太過努力來促進工作嗎?我曾經以這種方式使用數據集,並將Linq和Dataset一起使用,並且它運行良好...因此,對於這種情況,也許這些仍然是更好的方法?

+0

您在使用某些嵌入式數據庫考慮?就像Firebird Embedded支持EF?這會讓IMO更容易。 –

回答

0

我不知道你的意思是「本地數據」究竟是什麼(聽起來像它不是數據庫),但我認爲你的文章的數據集與EF部分是(對我來說)真正的問題。

當你需要建模健壯的業務邏輯,實施域模型模式,使用域驅動設計等時,EF非常棒:基本上任何表單模塊或活動記錄模式都不合適的場景。

當你只需要顯示一些數據網格,並且業務邏輯非常簡單時,數據集絕對是以我的經驗走的路。

+0

是的,我應該澄清 - 使用不帶數據庫的數據,即全部內存。基本上我想在數據集中做我以前做過的事情,但是使用EF代碼,因此,如果/以後我想將其與數據庫連接,它將更加兼容。 –

+1

您可以使用設計器或代碼先創建一個實體模型,而不需要存在數據庫;此外,與數據集相同,EF也是「內存中」。如果您真正的問題是「如何將EF與除數據庫以外的數據存儲(例如XML)一起使用?」然後看看這個SO帖子:http://stackoverflow.com/questions/608477/entity-framework-with-xml-files –

+0

我使用設計器創建實體,但是當我嘗試創建一個上下文時,它失敗沒有數據庫連接。也許有使用它們的方法嗎? –