1.模型配置方法:
1.1 DataAnnotations:
- 数据库中键表,添加字段(表t_login)
- 创建 Login类
- 表名:[Table("t_user")]
- 字段名:[Column("Name")]
- 新建一个继承 DbContext的类
public TestDBContent() : base("name=conn1"){} //conn1为连接字符串
public DbSet<Login> Logins { get; set; }
1.2 FluentAPI:
- 数据库键表
- 创建实体(不用任何修饰)
- 创建一个配置类(EntityTypeConfiguration继承这个类就可以了):
class UserConfig: EntityTypeConfiguration<User>
{
public UserConfig()
{
this.ToTable("t_user");//等价于[Table("t_user")]
}
}
- 新建一个继承 DbContext的类,重写OnModelCreating方法
public TestDBContent() : base("name=conn1"){}//conn1为连接字符串
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.Configurations.AddFromAssembly(Assembly.GetExecutingAssembly()); //加载当前执行的配置文件类的程序集
//如果不在同一个程序集,可能是Assembly.Load("名称");
}
public DbSet<Person> Persons { get; set; }
1.2.1 简单写法(不推荐):
public TestDBContent() : base("name=conn1"){}//conn1为连接字符串
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
modelBuilder.Entity<User>().ToTable("t_user");
//第二种写法modelBuilder.Configurations.Add(new UserConfig())
}
public DbSet<Person> Persons { get; set; }