2012-06-02 155 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

我使用设计器创建实体,但是当我尝试创建一个上下文时,它失败没有数据库连接。也许有使用它们的方法吗? –