一、新建一个解决方案,包含两个项目:EF6CodeFirstMySQL.Model(动态库项目),EF6CodeFirstMySQL.Tests(控制台应用)
二、通过NuGet将EntityFramework6及MySql.Data.Entity包引入解决方案(两个项目都要引入)
三、在Model项目中添加三个类,BaseBill,Contract,DeliveryNote,后面两个类从BaseBill类继承。(代码参见附件)
四、在Model项目中添加DataModelContext类,继承自DbContext
public class DataModelContext : DbContext { public DataModelContext() : base("DataModelContext")//web.config中connectionstring的名字 { } public DbSet<Contract> Contracts { get; set; } public DbSet<DeliveryNote> DeliveryNotes { get; set; } protected override void OnModelCreating(DbModelBuilder modelBuilder) { //指定单数形式的表名 modelBuilder.Conventions.Remove<PluralizingTableNameConvention>(); //物理表名添加xx前綴 modelBuilder.Types().Configure(f => f.ToTable("xx" + f.ClrType.Name)); } }