Entity Framework是否能够与具有未知表结构的其他数据库进行交互?

时间:2015-08-12 08:46:14

标签: c# sql entity-framework

我一直在使用 EF 作为我的最新项目,并且很享受使用它进行编程的便利性。虽然在连接上设置和使用自己的规则稍微困难一些,但是一旦到位,将数据库和类及其方法一样对待数据库会为它增加一个简单的层次。

但是,在我的情况下,我遇到过无法使用 EF 的情况。我的程序有一个可以使用的主数据库。那样就好!但它也与同一服务器上的其他数据库通信。例如。它从用户在程序中指定的外部表中读取数据。这些表当然不被 EF 识别,并且每次都有不同的结构。要与这些表进行通信,我必须像以前一样使用正常的Sql代码。所以我觉得两个世界之间有一点点。

我只是想知道外国数据是否有可能动态地成为Entity Model的一部分,或者是否可以在框架中容纳这些外国数据?

2 个答案:

答案 0 :(得分:3)

据我所知,这是不可能的。实体框架是ORM,因此它将您的Model(classe)映射到数据库。因此,如果您不了解您的模型,则无法告诉EF如何映射它。您应该使用另一种方法与动态数据进行通信。

答案 1 :(得分:0)

尝试LINQ-to-SQL(L2S);我想你会发现,很多你喜欢EF的是LINQ-to-Entities(L2E)的表现力,LINQ语法是一样的。

我不会骗你,但是总是有时间使用L2S,我希望我的关系是POCO的头等属性,但是在这种情况下你无法拥有一切。