微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使用EF Core将模型属性定义为鉴别器

如何解决如何使用EF Core将模型属性定义为鉴别器

我正在尝试使用基类中的属性作为数据库的区分符。但是,我还需要此属性在序列化时出现在我的派生实体中。如何将这个鉴别器也嵌入我的派生类中? 到目前为止,我收到此错误

找不到实体类型的属性“种类”的后备字段 'Base',并且该属性没有设置器。'

public class Base
{
   public enum Kind
   {
      A=0,B=1
   }
   public abstract Kind {get;}
}
public class A: Base
{
   override Kind=>Kind.A
}
public class B: Base
{
   override Kind=>Kind.B
}

设置

protected override void OnModelCreating(ModelBuilder modelBuilder) {
     modelBuilder.Entity<Base>().Hasdiscriminator<Base.Kind>("Kind")
                                .HasValue<A>(Base.Kind.A)
                                .HasValue<B>(Base.Kind.B);
}

我只希望在数据库代码中都存在一个充当鉴别符的字段。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。