实体框架和不同的DBMS

时间:2014-12-10 14:08:05

标签: c# vb.net entity-framework orm

首先,我是一个实体框架n00b,我可以清楚地看到实体框架的优势。

我想知道如何处理以下假设情况。

  1. 现有情况是使用针对一个DBMS(例如MySQL)的实体框架开发应用程序。在某些有效原因的某个时间点,有必要迁移到另一个DBMS(例如SQL Server)。

  2. 应用程序需要可以针对不同的DBMS在不同的客户端进行部署。应该可以在一个客户端部署应用程序,例如SQL Server。需要在另一个客户端部署相同的应用程序,例如的PostgreSQL。

  3. 在这两种情况下,不同DBMS上的数据库结构将大致相同,可能会略有不同的表名和/或列名。

    是否可以通过实体框架?或者也许是另一个ORM? 如果可能,任何人都可以在一个小代码示例中告诉我如何?或者在网上的某个地方指点我?

1 个答案:

答案 0 :(得分:1)

您可以在配置中指定多个提供商。 如果要定位不受支持的DBMS或者没有可用的连接器,则必须编写DataLayer的另一个实现。如果您通过应用程序其余部分的界面访问DataLayer,它应该可以正常工作。

我使用Sql Server和Sql Server CE完成了这项工作,但我不知道PostgreSQL。