Tämä artikkeli on konekäännöksen peiliartikkeli, klikkaa tästä siirtyäksesi alkuperäiseen artikkeliin.

Näkymä: 6692|Vastaus: 0

[Viestintä] Microsoft käynnistää Microsoft.Data.SqlClientin korvaamaan System.Data.SqlClientin

[Kopioi linkki]
Julkaistu 27.12.2021 22.21.14 | | |
tausta

.NET:n alkuvaiheessa System.Data-kehys oli tärkeä osa. Se tarjoaa tavan luoda .NET-tietokantaajureita, samankaltaisesti kuin Visual Basicin ActiveX Data Objects. Vaikka rajapinta on erilainen, sen nimeä käytetään uudelleen, mistä tulee lempinimi ADO .NET.

Yksi keskeinen ero ADO:n ja ADO .NET:n (eli System.Data) välillä on objektimalli. ADO:ssa tarvitsee yleensä käyttää vain Connection-, Command- ja Recordset-objekteja, ja OleDB/ODBC-ajuri piilottaa jotain muuta. Tämä parantaa koodin uudelleenkäyttöä, mutta kehittäjien on vaikea tuoda esiin joitakin tietokantaominaisuuksia.

ADO .NET:ssä voit myös käyttää OleDB/ODBC:tä, mutta useimmissa tapauksissa käytät sarjaa tietokantakohtaisia luokkia. Nämä luokat johdetaan DBConnectionista, DBCommandista ja DBDataReaderista, jotka säilyttävät alkuperäisen koodin uudelleenkäytettävyyden. Mutta koska ne ovat vahvasti nimettyjä tyyppejä, niiden täytyy olla nimenomaisesti osa .NET-kirjastoa.

Luultavasti kehityksen yksinkertaistamiseksi SQL Server, OleDB ja ODBC-ajurit ovat kaikki osa System.Data -kehystä. Tämä lähestymistapa oli tuolloin hyväksyttävä, mutta aiheutti ongelmia nykyisessä SQL Serverin kehityssyklissä.

Itse asiassa SQL Serverin julkaisusyklit ovat muuttuneet 3–5 vuodesta lähes joka vuosi. Uudet julkaisut vaativat usein päivityksiä .NET-ajuriin, mikä ei ole mahdollista, jos se on sidottu .NET-standardijulkaisusykliin.

Ensimmäinen vaihe on jakaa System.Data-kirjasto. NET Core toteuttaa tämän vaiheen tarjoamalla erilliset kirjastot jokaiselle tietokanta-ajurille. Seuraava askel on erottaa SQL Server -ajuri kokonaan .NET Core/Standardista. Tätä varten he loivat Microsoft.Data.SqlClientin.

Upgrade to Microsoft.Data.SqlClient

Useimmille kehittäjille Microsoft.Data.SqlClientin käyttö on hyvin yksinkertaista, vain kun jokaisen luokan alussa olevaa useus-lausetta voi muuttaa. Lisäksi se käyttää samoja luokkanimiä ja rajapintoja ja tarjoaa suunnilleen samat ominaisuudet.

Kevyille ORM-malleille, kuten Dapperille tai RepoDB:lle, lisämuutoksia ei tarvita.

Jos kehittäjät käyttävät ORM-laitteita yhteyksien hallintaan (esim. EF, NHibernate), heidän täytyy odottaa ORM-päivityksiä.

Ongelmallisemmat ovat ne, jotka sekoittavat ORM:ia. Jos toinen ORM käyttää Microsoft.Data.SqlClientia ja toinen System.Data.SqlClientia, se ei toimi samaan aikaan. Tämä on erityisen tärkeää työskennellessä jaettujen SqlTransaction -objektien kanssa.

käytettävyys

Microsoft.Data.SqlClientin versio 1.0 on saatavilla näille alustoille:

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


Tunnetut ongelmat

Kaikkien ei tarvitse päivittää heti. Nämä tunnetut ongelmat on mainittu dokumentaatiossa:

  • User Data Type (UDT) ei välttämättä toimi Microsoft.Data.SqlClientin kanssa.
  • Azure Key Vaultilla ja Microsoft.Data.SqlClientilla ei ole avainvarastoa.
  • Microsoft.Data.SqlClient ei tue Always Encrypted -toimintoa turvallisissa enklaveissa.
  • Vain .NET Framework ja .NET Core tukevat Always Encrypted -ohjelmaa, .NET Standard ei, koska .NET Standardista puuttuu joitakin salausriippuvuuksia.


Alkuperäinen linkki:https://blog.csdn.net/weixin_39777464/article/details/111698467




Edellinen:Linux päivittää järjestelmän ajan ja aikavyöhykkeen
Seuraava:ESXI-virtuaalikone laajentaa Linux-järjestelmän levykapasiteettia
Vastuuvapauslauseke:
Kaikki Code Farmer Networkin julkaisemat ohjelmistot, ohjelmamateriaalit tai artikkelit ovat tarkoitettu vain oppimis- ja tutkimustarkoituksiin; Yllä mainittua sisältöä ei saa käyttää kaupallisiin tai laittomiin tarkoituksiin, muuten käyttäjät joutuvat kantamaan kaikki seuraukset. Tämän sivuston tiedot ovat peräisin internetistä, eikä tekijänoikeuskiistat liity tähän sivustoon. Sinun tulee poistaa yllä oleva sisältö kokonaan tietokoneeltasi 24 tunnin kuluessa lataamisesta. Jos pidät ohjelmasta, tue aitoa ohjelmistoa, osta rekisteröityminen ja hanki parempia aitoja palveluita. Jos rikkomuksia ilmenee, ota meihin yhteyttä sähköpostitse.

Mail To:help@itsvse.com