日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

EF Core 数据库 Provider 一览

發布時間:2023/12/4 数据库 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 EF Core 数据库 Provider 一览 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

當 EF Core 1.x 系列和 2.0 版本之間經過重大的重寫時,所有 EF Core 數據庫 Provider 都受到重創。從那時起,各種私人和商業開發團隊一直在努力填補這個空白。

正文

當 EF Core 1.x 系列和 2.0 版本之間經過重大的重寫時,所有 EF Core 數據庫 Provider 都受到重創。從那時起,各種私人和商業開發團隊一直在努力填補這個空白。

在本文中,我們只關注生產就緒的 EF Core 數據庫 Provider。那些仍處于預覽或預發布狀態的 Provider 將在以后的文章中介紹。

SQL Server

SQL Server 自然是由微軟提供的,不過限制是僅適用于 SQL Server 2008 及更高版本。

對于 SQL Server 2000 和 2005,你可以使用原始的 Entity Framework。不過,這些版本不再受支持,所以不應繼續在生產環境中使用。

PostgreSQL

在.NET 中訪問 PostgreSQL 的事實標準是Npgsql 驅動程序和 EF Core 數據庫 Provider,不過它們并不是唯一的選擇。

Devart 為 PostgreSQL 提供了一個叫作dotConnect的商業版 Provider。這項產品的宣傳語如下所示:

用于 PostgreSQL 的 dotConnect 提供了與 PostgreSQL 數據庫的高性能連接以及很多創新的開發工具和技術。它支持 PostgreSQL 的大量特定功能,例如 SSL 連接、PostgreSQL 通知、PostgreSQL 批量數據加載、GEOMETRY、PostgreSQL ARRAY 類型,等等。

除了 ADO.NET 驅動程序,“dotConnect 還支持 ADO.NET?Entity Framework、NHibernate 和 LinqConnect(以前是 LINQ to PostgreSQL)”。最后一個是基于微軟的 LINQ to SQL ORM。

SQLite

微軟的 SQLite Provider是基于SQLitePCL的,SQLitePCL 是 SQLite 的一個實現,一個“可移植的類庫”框架。PCL 是.NET 標準的前身和子集。需要注意的是,這與SQLite 官方的.NET 標準驅動程序是相互獨立的。當微軟在實現 SQLite 數據庫 Provider 時,這些官方驅動程序還不可用。

如果你認為微軟的驅動程序還不夠高效,Devart 也提供了一個SQLite 驅動程序和 EF Provider。

MySQL

一些團隊提供了 MySQL 數據 Provider,首當其沖的是Oracle 提供的官方 MySQL Provider。

它的問題是底層的 MySQL 數據庫驅動程序聲譽不好。雖然是開源的,但它采用的是 GPLv2 許可,GPLv2 是一個相當嚴格的許可,在.NET 社區中并不常見。但真正的問題是 Oracle 的 MySQL 驅動程序不支持異步調用。根據 MySqlConnector 團隊透露,它只是使用了其他線程來執行同步 I/O。

因此,這個團隊從頭開始創建MySqlConnector。它是異步的,并采用了 MIT 許可。Pomelo Foundation 的 EF Core MySQL 數據庫 Provider就是基于 MySqlConnector 構建的。

同樣,Devart 提供了 MySQL 數據庫驅動程序和 EF Core Provider。它們的獨特功能包括“特定于 MySQL 的功能,如 SSL 和 SSH 連接、嵌入式服務器、壓縮協議、HTTP 通道,等等”。

Firebird

Firebird 數據庫在.NET 社區中并沒有得到很多關注,但它已經存在了很長時間。它最初是基于 Borland 的開源版 InterBase,但大部分代碼在過去 19 年中被重寫過。

除了官方提供的 Firebird 數據庫 Provider 外,Rafael Almeida 還提供了EntityFrameworkCore.FirebirdSql,它與 Firebird 2.x 數據庫兼容。

Progress OpenEdge

微軟正在更新 EF Core Provider 列表。Alex Wiese 最近推出的Progress OpenEdge EF Core Provider也才一個月左右。

微軟 Access

對微軟 Access 的支持主要來自一個意大利人(被稱為 bubibubi)。他提供的庫叫作EntityFrameworkCore.Jet,僅適用于.NET?Framework。

之所以有這種限制,是因為 OleDB 不支持.NET?Core,即使是在 Windows 上運行。這可能會在未來發生變化,因為很多 WinForms 和 WPF 應用程序無法在沒有 OleDB 的情況下移植到.NET?Core。除 Access 之外,很多應用程序使用 OleDB 驅動程序來讀取 Excel 文件。

SQL Server Compact

自 2013 年以來,SQL Server Compact 已被棄用,并被 SQLite 取代,但很多應用程序仍然有一些數據保存在 SQL Server Compact 中。如果你是這種情況,可以考慮使用 Erik Ejlskov Jensen 提供的SQL Server Compact EF Core 數據庫 Provider。

由于 SQL Server Compact 及其底層驅動程序的設計,它僅適用于.NET?Framework。

DB2

來自 IBM 的強大但很少被談及的數據庫 DB2,針對 Windows、Linux 和 OSX 平臺都需要單獨的庫。這三個庫都直接由 IBM 提供。

Oracle

Oracle 最初打算在 2017 年末對微軟.NET?Core 托管的 ODP.NET 驅動程序進行認證。該計劃于 2017 年 3 月公布,僅針對.NET?Core 2.0。該計劃于 2018 年 2 月進行了修訂,預計將于 2018 年第 3 季度發布。由于錯過了第二個截止日期,Oracle 尚未公開討論其修訂計劃。

Devart 提供了一個商業版的Oracle 數據庫驅動程序和 EF Core Provider。

原文地址:https://www.infoq.cn/article/Gk2v0dV7i_AC97lNisGY


.NET社區新聞,深度好文,歡迎訪問公眾號文章匯總 http://www.csharpkit.com


總結

以上是生活随笔為你收集整理的EF Core 数据库 Provider 一览的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。