EF OnModelCreating如何去创建表
时间: 2024-01-25 20:02:34 浏览: 14
EF OnModelCreating 方法是在 Code First 模式下用于配置实体类型与数据库模式之间映射关系的方法,它可以被用来创建表。
在 OnModelCreating 方法中,可以使用 Fluent API 或 Data Annotations 来配置实体与表之间的映射关系。其中,Fluent API 是一种基于方法调用的配置方式,通常能够提供更加灵活的配置选项。
下面是一个使用 Fluent API 创建表的示例:
```
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Student>()
.ToTable("Students")
.HasKey(s => s.ID);
modelBuilder.Entity<Student>()
.Property(s => s.Name)
.IsRequired()
.HasMaxLength(50);
modelBuilder.Entity<Student>()
.Property(s => s.Email)
.HasMaxLength(100);
}
```
这段代码定义了一个名为 "Students" 的表,包含 ID、Name 和 Email 三个字段。其中,ID 字段为主键,Name 字段为必需字段且最大长度为 50,Email 字段最大长度为 100。
当使用 Code First 进行数据库迁移时,EF 会根据这些配置信息自动创建相应的表结构。