Apakah kerangka kerja entitas kompatibel dengan mysql?

ADO terbaru. Evolusi NET berfokus pada peningkatan level abstraksi dari level logis (relasional) ke level konseptual (entitas). Untuk tujuan ini Microsoft memperkenalkan Entity Framework, yang dirancang untuk menyederhanakan konversi data - objek dan menyematkan kueri akses data ke dalam kode program

dotConnect untuk MySQL sepenuhnya mendukung ADO. Kerangka Entitas .NET, termasuk Inti Kerangka Entitas

Artikel ini terdiri dari bagian-bagian berikut

Apa itu ADO. Kerangka Entitas .NET?

Kerangka Entitas adalah seperangkat teknologi di ADO. NET yang mendukung pengembangan aplikasi perangkat lunak berorientasi data. Kerangka Entitas dirancang untuk memungkinkan pengembang membuat aplikasi akses data dengan memprogram terhadap model aplikasi konseptual alih-alih memprogram secara langsung terhadap skema penyimpanan relasional. Tujuannya adalah untuk mengurangi jumlah kode dan pemeliharaan yang diperlukan untuk aplikasi berorientasi data. Aplikasi Entity Framework memberikan keuntungan sebagai berikut

  • Aplikasi dapat bekerja dalam model konseptual yang lebih berpusat pada aplikasi, termasuk tipe dengan pewarisan, anggota kompleks, dan hubungan
  • Aplikasi dibebaskan dari ketergantungan hard-coded pada mesin data atau skema penyimpanan tertentu
  • Pemetaan antara model konseptual dan skema khusus penyimpanan dapat berubah tanpa mengubah kode aplikasi
  • Pengembang dapat bekerja dengan model objek aplikasi yang konsisten yang dapat dipetakan ke berbagai skema penyimpanan, kemungkinan diimplementasikan di sumber data yang berbeda
  • Beberapa model konseptual dapat dipetakan ke skema penyimpanan tunggal
  • Dukungan kueri terintegrasi bahasa menyediakan validasi sintaks waktu kompilasi untuk kueri terhadap model konseptual

Kerangka Entitas Mendukung Fitur Utama

  • Pendekatan konseptual untuk pengembangan usaha
  • Performa tinggi
  • Dukungan luas untuk LINQ ke Entitas
  • Dukungan luas untuk EntitySQL
  • Dukungan penuh CRUD (Buat, Ambil, Perbarui, Hapus).
  • Dukungan luas untuk tipe data server
  • Kemampuan untuk menggunakan prosedur tersimpan saat memanipulasi data
  • Dukungan impor prosedur tersimpan
  • Dukungan Visual Studio EDM Wizard (rekayasa balik objek database ke model entitas)
  • Dukungan Visual Studio LightSwitch
  • Menghasilkan dukungan Database Wizard (Model-First).
  • Dukungan fungsionalitas Code-First CreateDatabase/DatabaseExists/DropDatabase yang Dapat Dikonfigurasi
  • Dukungan untuk Migrasi Pertama Kode dengan fitur khusus basis data
  • Dukungan Entity Framework Spatials
  • Dukungan untuk fungsi sistem khusus basis data di LINQ ke Entitas dan Entitas SQL
  • Dukungan pencarian teks lengkap
  • Pembaruan massal
  • Konfigurasi penyedia Entity Framework

Menggunakan Penyedia Data Entitas

dotConnect untuk MySQL memungkinkan menggunakannya dalam model Entity Framework dengan berbagai cara. Anda dapat menggunakan penyedia kami dengan alat Visual Studio Entity Framework standar, dengan cara yang sama seperti SqlClient

Misalnya, Anda dapat membuat model Entity Framework, menggunakan pendekatan database-first (untuk Entity Framework v1 - v6) dengan cara berikut

  1. Buka proyek Anda
  2. Tambahkan item baru ADO. Model Data Entitas .NET ke proyek Anda dan tentukan namanya
  3. Pilih Hasilkan dari database
  4. Pilih dotConnect yang Anda gunakan sebagai penyedia data dan tentukan string koneksi
  5. Pilih tabel yang benar-benar digunakan dalam proyek Anda dan klik Hasilkan untuk menyelesaikan prosesnya. Jika tabel yang dipilih berisi kunci asing, tabel tersebut juga akan tercermin dalam model yang dibuat
  6. Tentukan nama untuk namespace model. Perhatikan bahwa nama ini harus berbeda dari nama basis data (skema).

dotConnect untuk MySQL juga menyediakan perancang ORM tingkat lanjut dan alat pembuatan kode - Pengembang Entitas. Ini memungkinkan pembuatan model Entity Framework v1 dan Entity Framework Core menggunakan pendekatan database-first, model-first, atau campuran dan menghasilkan kode untuk mereka

Untuk kenyamanan Anda, ada Tutorial Entity Framework singkat yang dapat Anda gunakan untuk mengenal teknologi tersebut. Anda juga dapat melihat sampel Entity Framework yang tersedia dengan produk, atau mengunduh paket Entity Framework Query Samples terpisah. Yang terakhir adalah demo Microsoft standar dengan tambahan konektivitas MySQL

dotConnect untuk MySQL juga mendukung Visual Studio LightSwitch, sehingga Anda dapat mengembangkan aplikasi LightSwitch dengan penyedia kami. Anda dapat menemukan tutorial membuat aplikasi LightSwitch sederhana menggunakan dotConnect untuk MySQL di sini. Tutorial. Cara Menghubungkan Visual Studio LightSwitch ke MySQL dengan dotConnect untuk Penyedia Data MySQL

Menggunakan Penyedia Data Entitas dengan Entity Framework v6

Karena tidak ada pendaftaran penyedia Entity Framework global untuk Entity Framework v6, Anda harus mendaftarkan penyedia kami secara manual di file konfigurasi proyek Anda. Untuk ini, Anda harus menambahkan baris berikut

ke entitasFramework -> bagian penyedia

    
      
    

_

Catatan. ganti 8. 3. 215. 0 dengan versi rakitan sebenarnya

Jika cocok untuk proyek Anda, Anda dapat menghilangkan versi perakitan yang tepat

    
        
    

Bagian ini muncul di file konfigurasi proyek hanya setelah Anda menambahkan paket NuGet EntityFramework baik secara eksplisit, dengan mengeksekusi perintah "install-package EntityFramework", atau secara implisit, dengan menambahkan model Entity Framework v6 untuk SQL Server melalui EDM Wizard

Menggunakan Entity Data Provider dengan Entity Framework 6. 4

dotConnect untuk MySQL sepenuhnya mendukung Entity Framework 6. 4 aktif. NET Core 3 (dan Full. Kerangka .NET)

Untuk Kerangka Entitas 6. 4, penyedia Entity Framework tidak dapat didaftarkan di file konfigurasi proyek Anda. Anda perlu menggunakan salah satu dari dua pendekatan berbasis kode berikut

  • Pendekatan pertama adalah menggunakan atribut DbConfigurationType. Ini hanya cocok untuk DbContext. Ini sebuah contoh

      [DbConfigurationType(typeof(Devart.Data.MySql.Entity.MySqlEntityProviderServicesConfiguration))]
      public class MyContext : DbContext {
     
        // ...
      }
    

  • Cara kedua adalah dengan menggunakan metode SetConfiguration statis dari kelas DbConfiguration. Itu dapat digunakan baik dengan DbContext dan ObjectContext. Ini sebuah contoh

      public class MyContext: ObjectContext {
     
        static MyContext() {
     
          DbConfiguration.SetConfiguration(new Devart.Data.MySql.Entity.MySqlEntityProviderServicesConfiguration());
        }
     
        // ...
      }
    
    _

Kedua contoh di atas menggunakan kelas Konfigurasi MySqlEntityProviderServices yang cocok untuk sebagian besar pengguna. Jika Kerangka Entitas 6. 4 konfigurasi penyedia harus disesuaikan, Anda perlu membuat turunan dari kelas DbConfiguration dan menetapkan nilai untuk SetProviderFactory() dan SetProviderServices() di dalamnya. Kemudian gunakan kelas khusus ini untuk pendaftaran penyedia. Ini sebuah contoh

  public class MySqlConfiguration: DbConfiguration {
 
    public MySqlConfiguration() {
 
      SetProviderFactory("Devart.Data.MySql", Devart.Data.MySql.MySqlProviderFactory.Instance);
      SetProviderServices("Devart.Data.MySql", Devart.Data.MySql.Entity.MySqlEntityProviderServices.Instance);
    } 
  }

Menggunakan Penyedia Data Entitas dengan Entity Framework Core

dotConnect untuk MySQL saat ini mendukung Entity Framework Core. Entity Framework Core didukung untuk Full. Platform .NET Framework versi 4. 5. 1 dan lebih tinggi dan untuk. Inti BERSIH. Pembuatan objek database dinamis (tabel/FK/PK/indeks/pemicu/urutan) berdasarkan model Entity Framework didukung. Lihat Tutorial Entity Framework Core Code-First kami untuk Lengkap. .NET Framework dan untuk. Inti BERSIH

Database-First melalui Package Manager Console dan perintah Scaffold-DbContext didukung. Lihat Tutorial Entity Framework Core Database-First kami untuk Lengkap. .NET Framework dan untuk. Inti BERSIH

Perlu diketahui bahwa hanya sebagian dari pengaturan konfigurasi penyedia Entity Framework yang didukung untuk Entity Framework Core. Selain itu, tidak semua fitur Entity Framework v6 didukung karena Entity Framework Core tidak mendukung banyak fitur Entity Framework v6 itu sendiri

Untuk menggunakan Entity Framework Core for Full. NET Framework, Anda memerlukan Visual Studio 2013 atau lebih tinggi. Untuk. NET Core Anda memerlukan Visual Studio 2017 atau lebih tinggi

Untuk mendaftarkan penyedia Entity Framework dan menyetel string koneksi, Anda perlu mengganti metode OnConfiguring turunan kelas DbContext Anda

C#csharp

Apakah kerangka kerja entitas kompatibel dengan mysql?
Salin Kode
protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) {
  
  optionsBuilder.UseMySql(@"User Id=root;Host=localhost;Database=Test;");
}
_

Protected Overrides Sub OnConfiguring(optionsBuilder As DbContextOptionsBuilder)

	optionsBuilder.UseMySql("User Id=root;Host=localhost;Database=Test;")
End Sub

Pemetaan yang didukung oleh Entity Framework Core dijelaskan secara rinci di bagian dokumentasi Entity Framework yang sesuai. Jika Anda berencana untuk mendukung beberapa sumber data untuk satu model Entity Framework dasar, yang dipetakan ke tabel dan kolom dengan nama berbeda di sumber data yang berbeda, Anda dapat menggunakan metode ekstensi khusus penyedia khusus dalam pemetaan lancar untuk mendukung pemetaan khusus untuk setiap data . dotConnect untuk MySQL menyediakan metode ekstensi berikut

  • ForMySqlToTable() - menentukan nama tabel
  • ForMySqlHasColumnName() - menentukan nama kolom
  • ForMySql HasColumnType() - menentukan tipe kolom
  • ForMySqlHasName() - menentukan nama indeks dan kunci utama
  • ForMySqlHasConstraintName() - menentukan kunci asing
  • ForMySqlHasDefaultValueSql() - menentukan nilai default kolom

Menyebarkan Proyek Kerangka Entitas

Saat menerapkan proyek Entity Framework, itu perlu

  1. Periksa apakah diperlukan rakitan Devat. Data. dll, Devart. Data. MySql. dll, dan Devart. Data. MySql. Kesatuan. EF. dll tersedia untuk aplikasi Anda. Di sini adalah versi Entity Framework yang digunakan dalam aplikasi Anda. Untuk Entity Framework v1 rakitan disebut Devart. Data. MySql. Kesatuan. EF1. dll "1", untuk Entity Framework v4 itu adalah Devart. Data. MySql. Kesatuan. EF4. dll, untuk Entity Framework v5 dan v6 itu adalah Devart. Data. MySql. Kesatuan. EF5. dll atau Devart.dll. Data. MySql. Kesatuan. EF6. dll masing-masing. Untuk Entity Framework Core itu adalah Devart. Data. MySql. Kesatuan. EFCore. dll. Majelis harus berada di folder aplikasi atau di GAC
  2. Jika Anda menggunakan fitur Code-First Migrations dari Entity Framework v4 atau Entity Framework v5, Anda juga perlu memeriksa apakah Devart. Data. MySql. Kesatuan. Migrasi. EF. perakitan dll tersedia untuk aplikasi Anda. Untuk Entity Framework v6 rakitan ini tidak diperlukan
  3. Jika Anda menggunakan Entity Framework Spatials dan NetTopologySuite, Anda juga perlu memeriksa apakah Devart. Data. MySql. Kesatuan. Spasial. EF. perakitan dll tersedia untuk aplikasi Anda
  4. Jika Anda menggunakan Entity Framework Core Spatials dan NetTopologySuite untuk Entity Framework Core 3, Anda perlu memeriksa apakah Devart. Data. MySql. Kesatuan. EFCore3. NetTopologiSuite. perakitan dll tersedia untuk aplikasi Anda. Itu terletak di subfolder \Entity\EFCore3 dari folder instalasi dotConnect untuk MySQL. Selain itu, Anda perlu menggunakan NetTopologySuite. dll dari NetTopologySuite 2. 1. 0 paket nuget
  5. Untuk Entity Framework v1 - v6, Anda perlu memberi tahu lingkungan Anda tentang keberadaan pabrik penyedia (tambahkan entri ke bagian DbProviderFactories seperti yang dijelaskan di atas)
  
    
    
  

_

Ganti 8. 3. 215. 0 di sini dengan versi Anda yang sebenarnya

Anda dapat menemukan rakitan yang diperlukan di folder Entitas di folder instalasi penyedia, di subfolder, sesuai dengan versi Kerangka Entitas yang diperlukan

Jika Anda mendaftarkan penyedia di mesin. config, harap pertimbangkan versi Entity Framework. Entity Framework v1 - aplikasi khusus memerlukan entri di. .NET Framework 2. 0, dan Entity Framework v4 dan yang lebih baru - aplikasi khusus harus didaftarkan di. .NET Framework 4. 0 file konfigurasi. Untuk Entity Framework Core tidak perlu mendaftarkan penyedia di mesin. file konfigurasi

Anda juga dapat membaca Pertimbangan Penempatan Micrsoft di ADO. Kerangka Entitas .NET

Kompatibilitas dan Persyaratan

dotConnect untuk MySQL kompatibel dengan ADO versi terbaru. .NET Entity Framework dan Visual Studio. Versi MySQL berikut diperlukan agar Entity Framework berfungsi dengan benar. 5. 0 atau lebih tinggi (baik MySQL dan MariaDB)

Migrasi antar ADO. Model Data Entitas .NET (*. edmx) dan Model Entitas Devart (*. edml)

Untuk memindahkan ADO Anda. Model Data Entitas .NET menjadi Model Entitas Devart, ubah ekstensi file model menjadi edml (edmx -> edml), ​​atur properti Build Action model Anda menjadi "DevartEntityDeploy", dan Alat Kustom menjadi "DevartEfGenerator". Setelah itu model dapat diedit dengan Devart Entity Developer

Untuk memigrasikan Model Entitas Devart Anda ke ADO. NET Model Data Entitas, ubah ekstensi file model (edml -> edmx), setel properti Build Action model Anda ke "EntityDeploy", dan Alat Kustom ke "EntityModelCodeGenerator". Setelah itu model dapat diedit dengan Entity Designer

Bagaimana cara menghubungkan database MySQL dengan framework entitas?

Anda dapat menguji API secara langsung dengan alat seperti Postman atau menghubungkannya dengan contoh aplikasi Angular atau React yang tersedia. .
Mulai dalam mode debug. .
Tambahkan penyedia database MySQL dari NuGet. .
Tambahkan string koneksi ke pengaturan aplikasi. .
Perbarui Konteks Data untuk Menggunakan MySQL. .
Instal alat dotnet ef. .
Tambahkan paket EF Core Design dari NuGet

Basis data apa yang digunakan kerangka kerja entitas?

EF Core bekerja dengan banyak database, termasuk Database SQL (on-premises dan Azure), SQLite, MySQL, PostgreSQL, dan Azure Cosmos DB.

Bagaimana cara menggunakan kerangka entitas di C # dengan MySQL?

Pengantar .
Prasyarat
Mulai
Langkah 1. Buka halaman Admin MySQL dan buat database baru
Langkah 2. Setelah membuat database baru, buat tabel baru
Langkah 3. Setelah membuat tabel baru, buka Visual Studio, dan klik Proyek Baru dan beri nama proyek. .
Langkah 4. Di Solution Explorer, buka "System

Melakukan. NET mendukung MySQL?

Connector/NET mencakup dukungan penuh untuk. Fitur yang disediakan oleh Server MySQL, hingga dan termasuk MySQL 8. 0 seri rilis . MySQL sebagai penyimpan dokumen (NoSQL), bersama dengan dukungan koneksi X Protocol untuk mengakses data MySQL menggunakan port X Plugin.