Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Membetulkan Ralat \'Tiada Pembekal Rangka Kerja Entiti Ditemui\' dengan MySQL?
Mengatasi Isu "Tiada Pembekal Rangka Kerja Entiti Ditemui" dengan MySQL dan EF
Mesej ralat "Tiada pembekal Rangka Kerja Entiti ditemui untuk 'MySql .Data.MySqlClient' ADO.NET provider" menunjukkan bahawa Rangka Kerja Entiti (EF) tidak dapat mencari pembekal yang sesuai untuk pangkalan data MySQL. Untuk menyelesaikan isu ini, langkah berikut perlu diambil:
Pertama sekali, pastikan penyambung MySQL terkini dipasang. Adalah disyorkan untuk menggunakan penyambung MySQL versi 6.8.X atau lebih baru.
Seterusnya, dalam versi EF sebelum 6, pembekal boleh didaftarkan dalam bahagian 'system.Data.DbProviderFactories' pada fail konfigurasi aplikasi. Kaedah ini, bagaimanapun, tidak akan berfungsi dalam EF6 dan ke atas.
Untuk EF6 dan yang lebih baru, perkara berikut perlu dilakukan:
[DbConfigurationType(typeof(MySql.Data.Entity.MySqlEFConfiguration))] public class DemoContext : DbContext { }
Jenis MySqlEFConfiguration terletak dalam MySql.Data.Entity.EF6. dll perhimpunan. Atribut ini memberitahu EF tentang jenis kilang pembekal untuk digunakan.
Pastikan rentetan sambungan anda dikonfigurasikan dengan betul. Dalam fail konfigurasi yang anda berikan, rentetan sambungan tidak mempunyai atribut "providerName". Ia sepatutnya kelihatan seperti ini:
<add name="myContext" connectionString="server=****;User Id=****;password=****;Persist Security Info=True;database=myDb" providerName="MySql.Data.MySqlClient" />
Setelah langkah ini selesai, EF seharusnya dapat mengenali penyedia MySQL dan berjaya menyambung ke pangkalan data MySQL.
Atas ialah kandungan terperinci Bagaimana untuk Membetulkan Ralat \'Tiada Pembekal Rangka Kerja Entiti Ditemui\' dengan MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!