本文共 2004 字,大约阅读时间需要 6 分钟。
当EF Core 1.x系列和2.0版本之间经过重大的重写时,所有EF Core数据库Provider都受到重创。从那时起,各种私人和商业开发团队一直在努力填补这个空白。
当EF Core 1.x系列和2.0版本之间经过重大的重写时,所有EF Core数据库Provider都受到重创。从那时起,各种私人和商业开发团队一直在努力填补这个空白。
在本文中,我们只关注。那些仍处于预览或预发布状态的 Provider将在以后的文章中介绍。
SQL Server自然是由微软提供的,不过限制是仅适用于SQL Server 2008及更高版本。
对于SQL Server 2000和2005,你可以使用原始的Entity Framework。不过,这些版本不再受支持,所以不应继续在生产环境中使用。
在.NET中访问PostgreSQL的事实标准是和EF Core数据库Provider,不过它们并不是唯一的选择。
Devart为PostgreSQL提供了一个叫作的商业版Provider。这项产品的宣传语如下所示:
用于PostgreSQL的dotConnect提供了与PostgreSQL数据库的高性能连接以及很多创新的开发工具和技术。它支持PostgreSQL的大量特定功能,例如SSL连接、PostgreSQL通知、PostgreSQL批量数据加载、GEOMETRY、PostgreSQL ARRAY类型,等等。
除了ADO.NET驱动程序,“ Entity Framework、NHibernate和LinqConnect(以前是LINQ to PostgreSQL)”。最后一个是基于微软的LINQ to SQL ORM。
是基于的,SQLitePCL是SQLite的一个实现,一个“可移植的类库”框架。PCL是.NET标准的前身和子集。需要注意的是,这与是相互独立的。当微软在实现SQLite数据库Provider时,这些官方驱动程序还不可用。
如果你认为微软的驱动程序还不够高效,Devart也提供了一个。
一些团队提供了MySQL数据Provider,首当其冲的是。
它的问题是底层的MySQL数据库驱动程序声誉不好。虽然是开源的,但它采用的是GPLv2许可,GPLv2是一个相当严格的许可,在.NET社区中并不常见。但真正的问题是Oracle的MySQL驱动程序不支持异步调用。根据MySqlConnector团队透露,它只是使用了其他线程来执行同步I/O。
因此,这个团队从头开始创建。它是异步的,并采用了MIT许可。就是基于MySqlConnector构建的。
同样,Devart提供了MySQL数据库驱动程序和EF Core Provider。它们的独特功能包括“特定于MySQL的功能,如SSL和SSH连接、嵌入式服务器、压缩协议、HTTP通道,等等”。
Firebird数据库在.NET社区中并没有得到很多关注,但它已经存在了很长时间。它最初是基于Borland的开源版InterBase,但大部分代码在过去19年中被重写过。
除了官方提供的Firebird数据库Provider外,Rafael Almeida还提供了,它与Firebird 2.x数据库兼容。
微软正在更新EF Core Provider列表。Alex Wiese最近推出的也才一个月左右。
对微软Access的支持主要来自一个意大利人(被称为bubibubi)。他提供的库叫作, Framework。
之所以有这种限制, Core,即使是在Windows上运行。这可能会在未来发生变化, Core。除Access之外,很多应用程序使用OleDB驱动程序来读取Excel文件。
自2013年以来,SQL Server Compact已被弃用,并被SQLite取代,但很多应用程序仍然有一些数据保存在SQL Server Compact中。如果你是这种情况,可以考虑使用Erik Ejlskov Jensen提供的。
由于SQL Server Compact及其底层驱动程序的设计, Framework。
来自IBM的强大但很少被谈及的数据库DB2,针对Windows、Linux和OSX平台都需要单独的库。这三个库都直接由IBM提供。
Core托管的ODP.NET驱动程序进行认证。该计划于2017年3月公布, Core 2.0。该计划于2018年2月进行了修订,预计将于2018年第3季度发布。由于错过了第二个截止日期,Oracle尚未公开讨论其修订计划。
Devart提供了一个商业版的。
查看英文原文:
转载地址:http://ojbvx.baihongyu.com/