EF Core DbSet

DbSet 是某个实体类的集合,它是对实体进行数据库操作的网关。 DbSet 类作为属性添加到 DbContext,每一个属性都对应一个表。

public class MalemaDbContext : DbContext
{
    public MalemaDbContext(DbContextOptions<MalemaDbContext> options)
            : base(options)
    {
        this.Database.EnsureCreated();
        
    }

    //...其它的代码
    public DbSet<Student> Students { get; set; }
}

public class Student
{
    public int Id { get; set; }

    public string Name { get; set; }

    public int Age { get; set; }
}

在上面的代码中,我们有一个实体类是Student。 在MalemaDbContext当中有一个 Students属性。 因为我们有用了 this.Database.EnsureCreated(); 所以当我们的数据库还没有创建的时候。这个会帮我生成一个跟Student一样的表。 默认表名是复数形式 Students. Id 这个是一个约定。会被当作主键。

DbContext也有一个 Set()方法。这个也是返回一个 DbSet。 有一些人喜欢用 Repository的模式, 这个方法就很有用了。(个人感觉有蛮大的缺点)

最近更新的
...