我发现 OpenEdge 没有 OLEDB 或本机 ADO.NET 驱动程序。
有没有人成功地将 OpenEdge 驱动程序与 Linq 或实体框架一起使用?
我发现 OpenEdge 没有 OLEDB 或本机 ADO.NET 驱动程序。
有没有人成功地将 OpenEdge 驱动程序与 Linq 或实体框架一起使用?
ProgressSw 仍然没有官方解决方案,但我可以推荐 Alex Wiese 的提供者(请参阅下面的答案):EntityFrameworkCore.OpenEdge
因为ODBC 是 .net 客户端唯一受支持的接口,所以您不能直接将 OpenEdge DB 与 Entity Framework 一起使用(为什么 Entity Framework 不支持 ODBC?)。
但是有一个来自OpenLink的用于 OpenEdge 的商业 ADO.NET 驱动程序 和一个非官方的NHibernate Dialect。
我现在为 OpenEdge创建了一个Entity Framework Core 提供程序。您现在可以通过 ODBC 对 OpenEdge 数据库使用 Entity Framework Core。
您可以使用带有 ODBC 连接的简单 ORM Dapper到 Progress OpenEdge。
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 并修改代码来解决这些问题。