Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 6692|Antwoord: 0

[Communicatie] Microsoft lanceert Microsoft.Data.SqlClient ter vervanging van System.Data.SqlClient

[Link kopiëren]
Geplaatst op 27-12-2021 22:21:14 | | |
achtergrond

In de beginjaren van .NET was het System.Data-framework een belangrijk onderdeel. Het biedt een manier om .NET-databasedrivers te maken, vergelijkbaar met Visual Basic's ActiveX Data Objects. Hoewel de API anders is, wordt de naam hergebruikt, vandaar de bijnaam ADO .NET.

Een belangrijk verschil tussen ADO en ADO .NET (oftewel System.Data) is het objectmodel. In ADO hoef je meestal alleen Connection-, Command- en Recordset-objecten te gebruiken, en de OleDB/ODBC-driver verbergt iets anders. Dit verbetert het hergebruik van code, maar het is moeilijk voor ontwikkelaars om sommige databasefuncties beschikbaar te stellen.

In ADO .NET kun je ook OleDB/ODBC gebruiken, maar in de meeste gevallen gebruik je een reeks database-specifieke klassen. Deze klassen zijn afgeleid van DBConnection, DBCommand, en DBDataReader, die de herbruikbaarheid van de originele code behouden. Maar omdat het sterk benoemde types zijn, moeten ze expliciet deel uitmaken van de .NET-bibliotheek.

Waarschijnlijk om de ontwikkeling te vereenvoudigen, maken SQL Server, OleDB en ODBC-drivers allemaal deel uit van het System.Data-framework. Deze aanpak was destijds acceptabel, maar veroorzaakte problemen in de huidige ontwikkelingscyclus van SQL Server.

Sterker nog, de releasecycli van SQL Server zijn veranderd van 3 tot 5 jaar tot bijna elk jaar. Nieuwe releases vereisen vaak updates van de .NET-driver, wat niet mogelijk is als deze gekoppeld is aan de .NET-standaard releasecyclus.

De eerste stap is het splitsen van de System.Data-bibliotheek. NET Core voert deze stap uit door aparte bibliotheken te bieden voor elke databasedriver. De volgende stap is om de SQL Server-driver volledig te scheiden van .NET Core/Standard. Om dit te doen, hebben ze Microsoft.Data.SqlClient ontwikkeld.

Upgrade naar Microsoft.Data.SqlClient

Voor de meeste ontwikkelaars is het gebruik van Microsoft.Data.SqlClient heel eenvoudig, waarbij je gewoon de using statement bovenaan elke klasse aanpassen. Bovendien gebruikt het dezelfde klassennamen en API's, en biedt het ongeveer dezelfde functies.

Voor lichtgewicht ORM's zoals Dapper of RepoDB zijn verdere wijzigingen niet nodig.

Als ontwikkelaars ORMs gebruiken om verbindingen te beheren (bijv. EF, NHibernate), moeten ze wachten op ORM-upgrades.

De meer lastige zijn die die ORM's mengen. Als de ene ORM Microsoft.Data.SqlClient gebruikt en de andere System.Data.SqlClient, werkt het niet tegelijk. Dit is vooral belangrijk bij het werken met gedeelde SqlTransaction-objecten.

bruikbaarheid

Versie 1.0 van Microsoft.Data.SqlClient is beschikbaar voor deze platforms:

  • .NET Framework 4.6+
  • .NET Core 2.1+
  • .NET Standard 2.0+


Bekende problemen

Niet iedereen hoeft meteen te upgraden. Deze bekende problemen worden vermeld in de documentatie:

  • User Data Type (UDT) werkt mogelijk niet met Microsoft.Data.SqlClient.
  • Azure Key Vault en Microsoft.Data.SqlClient hebben geen keystore.
  • Microsoft.Data.SqlClient ondersteunt Always Encrypted niet voor beveiligde enclaves.
  • Alleen .NET Framework en .NET Core ondersteunen Always Encrypted, .NET Standard niet, omdat .NET Standard enkele encryptieafhankelijkheden mist.


Originele link:https://blog.csdn.net/weixin_39777464/article/details/111698467




Vorig:Linux werkt de systeemtijd en tijdzone bij
Volgend:ESXI virtual machine breidt de schijfcapaciteit van het Linux-systeem uit
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com