Saya memiliki Entitas dan saya mengonfigurasi Entity Framework untuk memetakannya ke tabel database dengan nama yang berbeda.
Saya dapat dengan mudah melakukan ini dengan Code First DataAnnotations ( DataAnnotations.Schema.TableAttribute ).
Tetapi karena keterbatasan sekarang saya harus menggunakan Code First Fluent API (objek domain saya akan digunakan oleh klien eksternal, jadi mereka tidak boleh spesifik teknologi - misalnya memiliki referensi ke DataAnnotations)
Saya telah mencari di MSDN tetapi tidak menemukan apa pun. Jadi apakah mungkin dan bagaimana caranya?
Terima kasih.
Jawaban:
Anda akan menggunakan
.ToTable()
metode:modelBuilder.Entity<Department>().ToTable("t_Department");
Sumber: MSDN: http://msdn.microsoft.com/en-us/data/jj591617.aspx
sumber
Anda juga dapat menggunakan anotasi Tabel:
[Table("InternalBlogs")] public class Blog
Lihat: Kode Anotasi Data Pertama
sumber
Gunakan metode ToTable:
public class MyEntityMap : EntityTypeConfiguration<MyEntity> { public const string TableName = "MyEntity"; public MyEntityMap() { ToTable(TableName); Property(t => t.Id); } }
sumber
OnModelCreating
metode Anda, Anda harus melakukan: dimodelBuilder.Configurations.Add(new MyEntityMap());
mana alih-alih Anda baru saja menambahkanmodelBuilder.Entity<MyEntity>().ToTable("MyEntityTable");
jadi tidak, ini bukan cara yang lebih bersih kecuali Anda juga memiliki pemetaan lain yang harus dilakukan untuk entitas ini.