Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Entity Framework membuat nama tabel jamak, tetapi tampilan mengharapkan nama tabel tunggal?

Jadi saya menyerah untuk mencoba melakukannya dengan cara yang menurut saya harus dilakukan dan menghapus pluralisasi bersama-sama. Saya tidak benar-benar tahu pasti, tetapi saya menganggap masalahnya ada hubungannya dengan dukungan konektor mysql .net untuk EF. Inilah yang saya lakukan.

Pertama, ada bug dalam metode ApplicationStart saya:

//WRONG
//Database.SetInitializer(new DropCreateDatabaseAlways<myDB>());
Database.SetInitializer(new myDBInitializer());

Kedua, saya berhenti memanggil implementasi basis OnModelCreating yang tidak tercantum dalam kode asli karena saya hanya mengimplementasikannya sesuai saran jgauffin:

protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
    //DONT DO THIS ANYMORE
    //base.OnModelCreating(modelBuilder);
    //modelBuilder.Entity<Vote>().ToTable("Votes")
    modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
}

Ketiga, saya membaca di beberapa posting bahwa Konektor .net MySQL tidak membiarkan EF benar-benar MENCIPTAKAN database, jadi saya awalnya membuat DB kosong. Hal ini tampaknya tidak lagi terjadi pada konektor 6.4.4+, dan selama pengguna string koneksi Anda memiliki kemampuan untuk membuat database baru, database akan berfungsi lebih baik jika pada awalnya tidak ada.

Sekali, saya melakukan semua hal di atas, sepertinya berhasil. Jadi sekarang saya setidaknya bisa bergerak maju. Semoga kita bisa mengetahui penyebab perbedaan jamak / tunggal di masa depan.

Terima kasih kepada semua orang atas waktu dan usaha mereka.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Berbagai Cara untuk Melihat Tabel di Server MySQL

  2. BATAS kata kunci di MySQL dengan pernyataan yang disiapkan

  3. MySQL Workbench:Kesalahan dalam kueri (1064):Kesalahan sintaks di dekat 'VISIBLE' di baris 1

  4. PostgreSQL vs. MySQL:Mana yang Terbaik?

  5. Ubah format tanggal (dalam DB atau keluaran) menjadi hh/bb/tttt - PHP MySQL