Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 实体框架是否能够与具有未知表结构的其他数据库交互?_C#_Sql_Entity Framework - Fatal编程技术网

C# 实体框架是否能够与具有未知表结构的其他数据库交互?

C# 实体框架是否能够与具有未知表结构的其他数据库交互?,c#,sql,entity-framework,C#,Sql,Entity Framework,我一直在为我的最新项目使用EF,并且很享受使用它编程的轻松性。虽然在连接上设置和使用自己的规则稍微困难一些,但一旦设置到位,将数据库视为类及其方法,这将为数据库添加一个非常简单的层次 然而,在我的案例中,我遇到了一些我仍然无法使用EF的情况。我的程序有一个主数据库可以使用。那很好!但它也与同一服务器上的其他数据库通信。例如,它从用户在程序内部指定的外部表中读取数据。当然,EF不会识别这些表,它们每次都有不同的结构。为了与这些表通信,我必须像以前一样使用普通的Sql代码。所以我觉得这两个世界之间有

我一直在为我的最新项目使用EF,并且很享受使用它编程的轻松性。虽然在连接上设置和使用自己的规则稍微困难一些,但一旦设置到位,将数据库视为类及其方法,这将为数据库添加一个非常简单的层次

然而,在我的案例中,我遇到了一些我仍然无法使用EF的情况。我的程序有一个主数据库可以使用。那很好!但它也与同一服务器上的其他数据库通信。例如,它从用户在程序内部指定的外部表中读取数据。当然,EF不会识别这些表,它们每次都有不同的结构。为了与这些表通信,我必须像以前一样使用普通的Sql代码。所以我觉得这两个世界之间有点矛盾


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

正如我所知,这是不可能的。实体框架是ORM,所以它将您的模型(classe)映射到数据库。所以,如果你不知道你的模型,你就不能告诉EF如何映射它。您应该使用另一种方法与动态数据通信。

尝试一下LINQ to SQL(L2S);我想你会发现,你喜欢EF的很多地方是LINQ对实体(L2E)的表达能力,LINQ语法也是一样的


不过,我不会对你们撒谎:总有一天我会使用L2S,我希望我的关系是POCO上的第一类属性,但在这种情况下,你们不能拥有一切。

你们仍然可以用EF执行t-SQL,所以从技术上讲,你们可以。@Pedram hi,你们找到答案了吗?