美文网首页
EF Core 存储继承关系 Table-per-hierarc

EF Core 存储继承关系 Table-per-hierarc

作者: 寻找无名的特质 | 来源:发表于2022-04-13 05:29 被阅读0次

缺省情况下,EF使用table-per-hierarchy(TPH)映射继承关系,TPH使用一张单表保存继承关系中所有类型的数据,使用一个识别列(Discriminator)区分不同的类型。这个列的名称和不同类型保存的值可以定义:

protected override void OnModelCreating(ModelBuilder modelBuilder)
{
    modelBuilder.Entity<Blog>()
        .HasDiscriminator<string>("blog_type")
        .HasValue<Blog>("blog_base")
        .HasValue<RssBlog>("blog_rss");
}

EF Core 为识别列添加一个隐藏的属性,在查询时根据识别列中的类型过滤出相应的实体。

相关文章

网友评论

      本文标题:EF Core 存储继承关系 Table-per-hierarc

      本文链接:https://www.haomeiwen.com/subject/phbgjrtx.html