【问题标题】:Supporting both SQL Server and Oracle in an EF DB first scenario在 EF DB 优先方案中同时支持 SQL Server 和 Oracle
【发布时间】:2014-04-17 10:44:45
【问题描述】:

我参与了一个使用实体框架 + 数据库优先 + SQL Server 的项目。已决定应用程序必须在不更改代码库的情况下也支持 Oracle。

所以我对基本原型的想法如下:每当 SQL Server DB 发生变化时

  • 将更改迁移到 Oracle
  • 从两个 DB 生成 EDMX 文件
  • 使用 T4 设置连接字符串和与代码库一起使用的 EDMX

这样好吗?有没有更好的方法?

谢谢。

【问题讨论】:

    标签: sql-server oracle entity-framework ef-database-first


    【解决方案1】:

    我认为这个问题更多的是品味问题,而不是对与错。
    只要它在您的测试中正常运行 - 你就很好。

    虽然 - 重要的是要记住,EF 并不意味着允许在不修改代码的情况下更改数据源。
    因此 - 我认为这个要求存在一个基本问题。
    我想说 - 要么使用 OLEDB/ODBC,这正是为此而设计的,所有查询都在配置文件中,要么期望通过 DBMS 引擎更改来更改代码。

    请记住,DBMS 中存在的数据类型是不同的,例如 - Oracle BLOB 不像 MSSQL 二进制文件...

    所以 - 我想说两件事:
    1. 如果代码通过了您的测试,并且您对结果感到满意 - 您使用的技术正在发挥作用。
    2. 使您使用的技术符合您的要求.. EF 作为基础技术不符合您的要求。 ODBC/OLEDB 做。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-03-06
      • 2011-07-03
      • 1970-01-01
      • 1970-01-01
      • 2019-12-16
      • 2013-11-11
      • 2020-03-22
      • 2020-05-05
      相关资源
      最近更新 更多