Artikel ini adalah artikel cermin dari terjemahan mesin, silakan klik di sini untuk melompat ke artikel aslinya.

Melihat: 6692|Jawab: 0

[Komunikasi] Microsoft meluncurkan Microsoft.Data.SqlClient untuk menggantikan System.Data.SqlClient

[Salin tautan]
Diposting pada 27/12/2021 22.21.14 | | |
latar

Pada hari-hari awal .NET, kerangka kerja System.Data adalah komponen penting. Ini menyediakan cara untuk membuat driver database .NET, mirip dengan Objek Data ActiveX Visual Basic. Meskipun API-nya berbeda, namanya digunakan kembali, oleh karena itu julukan ADO .NET.

Salah satu perbedaan utama antara ADO dan ADO .NET (yaitu, System.Data) adalah model objek. Di ADO, Anda biasanya hanya perlu menggunakan objek Connection, Command, dan Recordset, dan driver OleDB/ODBC menyembunyikan sesuatu yang lain. Ini meningkatkan penggunaan kembali kode, tetapi sulit bagi pengembang untuk mengekspos beberapa fitur database.

Di ADO .NET, Anda juga dapat menggunakan OleDB/ODBC, tetapi dalam banyak kasus Anda akan menggunakan serangkaian kelas khusus database. Kelas-kelas ini berasal dari DBConnection, DBCommand, dan DBDataReader, yang mempertahankan penggunaan kembali kode asli. Tetapi karena mereka adalah jenis yang sangat bernama, mereka harus secara eksplisit menjadi bagian dari pustaka .NET.

Mungkin untuk menyederhanakan pengembangan, driver SQL Server, OleDB, dan ODBC semuanya adalah bagian dari kerangka kerja System.Data. Pendekatan ini dapat diterima pada saat itu, tetapi menimbulkan masalah dengan siklus pengembangan SQL Server saat ini.

Faktanya, siklus rilis SQL Server telah berubah dari 3 hingga 5 tahun menjadi hampir setiap tahun. Rilis baru sering kali memerlukan pembaruan ke driver .NET, yang tidak mungkin dilakukan jika terkait dengan siklus rilis standar .NET.

Langkah pertama adalah membagi pustaka System.Data. NET Core menyelesaikan langkah ini dengan menyediakan pustaka terpisah untuk setiap driver database. Langkah selanjutnya adalah sepenuhnya memisahkan driver SQL Server dari .NET Core/Standard. Untuk melakukan ini, mereka membuat Microsoft.Data.SqlClient.

Tingkatkan ke Microsoft.Data.SqlClient

Bagi sebagian besar pengembang, menggunakan Microsoft.Data.SqlClient akan sangat sederhana, cukup memodifikasi pernyataan using di bagian atas setiap kelas. Plus, ia menggunakan nama kelas dan API yang sama, dan menyediakan fitur yang kira-kira sama.

Untuk ORM ringan seperti Dapper atau RepoDB, tidak diperlukan perubahan lebih lanjut.

Jika pengembang menggunakan ORM untuk mengelola koneksi (misalnya, EF, NHibernate), mereka harus menunggu peningkatan ORM.

Yang lebih merepotkan adalah yang mencampur OMR. Jika satu ORM menggunakan Microsoft.Data.SqlClient dan yang lainnya menggunakan System.Data.SqlClient, itu tidak akan berfungsi pada saat yang sama. Ini sangat penting saat bekerja dengan objek SqlTransaction bersama.

Kegunaan

Versi 1.0 dari Microsoft.Data.SqlClient tersedia untuk platform berikut:

  • Kerangka Kerja .NET 4.6+
  • .NET Inti 2.1+
  • .NET Standar 2.0+


Masalah umum

Tidak semua orang perlu segera meningkatkan. Masalah yang diketahui ini dicatat dalam dokumentasi:

  • Tipe Data Pengguna (UDT) mungkin tidak berfungsi dengan Microsoft.Data.SqlClient.
  • Azure Key Vault dan Microsoft.Data.SqlClient tidak memiliki penyimpanan kunci.
  • Microsoft.Data.SqlClient tidak mendukung Always Encrypted untuk enklave yang aman.
  • Hanya .NET Framework dan .NET Core yang mendukung Always Encrypted, .NET Standard tidak, karena .NET Standard tidak memiliki beberapa dependensi enkripsi.


Tautan asli:https://blog.csdn.net/weixin_39777464/article/details/111698467




Mantan:Linux memperbarui waktu dan zona waktu sistem
Depan:Mesin virtual ESXI memperluas kapasitas disk sistem Linux
Sanggahan:
Semua perangkat lunak, materi pemrograman, atau artikel yang diterbitkan oleh Code Farmer Network hanya untuk tujuan pembelajaran dan penelitian; Konten di atas tidak boleh digunakan untuk tujuan komersial atau ilegal, jika tidak, pengguna akan menanggung semua konsekuensi. Informasi di situs ini berasal dari Internet, dan sengketa hak cipta tidak ada hubungannya dengan situs ini. Anda harus sepenuhnya menghapus konten di atas dari komputer Anda dalam waktu 24 jam setelah pengunduhan. Jika Anda menyukai program ini, harap dukung perangkat lunak asli, pembelian pendaftaran, dan dapatkan layanan asli yang lebih baik. Jika ada pelanggaran, silakan hubungi kami melalui email.

Mail To:help@itsvse.com