【问题标题】:OpenEdge + Odbc + LinqOpenEdge + Odbc + Linq
【发布时间】:2013-09-28 20:25:23
【问题描述】:

我发现 OpenEdge 没有 OLEDB 或本机 ADO.NET 驱动程序。

有没有人成功地将 OpenEdge 驱动程序与 Linq 或实体框架一起使用?

【问题讨论】:

    标签: openedge progress-db


    【解决方案1】:

    EF 核心

    ProgressSw 仍然没有官方解决方案,但我可以推荐 Alex Wiese 的提供商(请参阅下面的答案):EntityFrameworkCore.OpenEdge

    EF 6(.Net 框架)

    因为ODBC is the only supported Interface for .net Clients 您不能直接将 OpenEdge DB 与实体框架一起使用 (Why doesn't Entity Framework support ODBC?)。

    但是有一个来自OpenLink 的用于 OpenEdge 的商业 ADO.NET 驱动程序 还有一个非官方的NHibernate Dialect

    【讨论】:

      【解决方案2】:

      更新

      我现在为 OpenEdge 创建了一个Entity Framework Core provider。您现在可以通过 ODBC 对 OpenEdge 数据库使用 Entity Framework Core。

      小巧玲珑

      您可以使用简单的 ORM Dapper 与 Progress OpenEdge 的 ODBC 连接。

      using (var connection = new OdbcConnection("DSN=My OpenEdge DB;Pwd=mypassword"))
      {
          connection.Open();
      
          var dogs = connection.Query<Dog>("SELECT * FROM pub.Dogs");
      }
      

      您可以将 Dapper.Contrib 用于某些选择语句(因此您无需编写 SQL)。其他语句无法正常工作,并且参数存在问题。你可以 fork Dapper 并修改代码来解决这些问题。

      【讨论】:

      • 感谢您在此处发布此内容。我最近在我的一个项目中成功使用了它。
      猜你喜欢
      • 2010-10-11
      • 1970-01-01
      • 2015-03-05
      • 2018-02-14
      • 2018-04-19
      • 1970-01-01
      • 2014-10-02
      • 2021-10-05
      • 2012-10-12
      相关资源
      最近更新 更多