繁体   English   中英

实体框架4.1抽象类和区分符

[英]Entity Framework 4.1 abstract class and discriminator

目前,我有一个我无法理解的问题。

我的模型中有2个实体

[Table("TX_REDEVABLE")]
public abstract class Redevable
{

}

[Table("TX_BILLET_STATION")]
public class BilletStation 
{
    [Column("BST_ID_INFO_RDV")]
    public Int64? RedevableId { get; set; }

    [UserVisible(Ordre = 23)]
    [Display(Name = "Redevable")]
    [ForeignKey("RedevableId")]
    public virtual Redevable Redevable { get; set; }
}

我尝试进行如下查询:

var q = (from b in Repository.DataContext.BilletStation
         where b.Redevable != null
         select b).ToList();

如果我的类Redevable是抽象的,它可以很好地工作。 但是现在,我需要实例化一个新的Redevable这样我就没有抽象类了。

如果没有abstract关键字,我现在会出现一个错误,说the "extend2"."discriminator" is undefined.

有人可以帮助我吗?

我找到了解决方案,我创建了一个新类“ RedevableConcrete”,该类继承自“ Redevable”,并将其标记为NotMapped。

这样,我可以实例化它以创建一些新实体,并且查询工作正常。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM