Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Entity framework 用继承的类映射实体_Entity Framework_Asp.net Mvc 4 - Fatal编程技术网

Entity framework 用继承的类映射实体

Entity framework 用继承的类映射实体,entity-framework,asp.net-mvc-4,Entity Framework,Asp.net Mvc 4,我有RCM和RCS类,它们都是从RC继承的,我希望那个实体只生成RCM和RCS表。在我的上下文类上有以下方法: protected override void OnModelCreating(DbModelBuilder modelBuilder) { modelBuilder.Conventions.Remove<PluralizingTableNameConvention>(); modelBuilder.Entity<Cl

我有RCM和RCS类,它们都是从RC继承的,我希望那个实体只生成RCM和RCS表。在我的上下文类上有以下方法:

    protected override void OnModelCreating(DbModelBuilder modelBuilder)
    {
        modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();

        modelBuilder.Entity<Cliente>().Map(m =>
        {
            m.MapInheritedProperties();
            m.ToTable("Cliente");
        });

        modelBuilder.Entity<Usuario>().Map(m =>
        {
            m.MapInheritedProperties();
            m.ToTable("Usuario");
        });

        modelBuilder.Entity<RCS>().Map(m =>
        {
            m.MapInheritedProperties();
            m.ToTable("RCS");
        });

        modelBuilder.Entity<RCM>().Map(m =>
        {
            m.MapInheritedProperties();
            m.ToTable("RCM");
        });

        modelBuilder.Entity<MaterialPedido>().Map(m =>
        {
            m.MapInheritedProperties();
            m.ToTable("MaterialPedido");
        });
    }

RC表中有什么?为
RC
RCS
RCM
@user3670112显示类,是否有任何类具有
RC
public RC{get;set;}
类型的属性?我发布了类代码。没有属性类型RC。我正在调查项目上的所有Cals,发现一个类的属性类型为RC,我将其删除,不再生成RC表。谢谢大家。
public abstract class RC
{
    [Key]
    public int ID { get; set; }

    [Required]
    public String Numero { get; set; }

    [Required(ErrorMessage = "Campo Obra é obrigatório!")]
    public virtual Obra Obra { get; set; }

    [Required]
    public DateTime Data { get; set; }

    [Required]
    public Usuario Ususario { get; set; }
}

public class RCM : RC
{
    public DateTime DataNecessidade { get; set; }

    [Required(ErrorMessage = "Os Materiais são obrigatórios!")]
    public List<MaterialRCM> Materiais { get; set; }

    public RCM()
    {

    }

    public RCM(int ID, String Numero, Obra Obra, DateTime Data, DateTime DataNecessidade, List<MaterialRCM> Materiais, int Cod_Usuario)
    {
        base.ID = ID;
        base.Numero = Numero;
        base.Obra = Obra;
        base.Data = Data;
        this.DataNecessidade = DataNecessidade;
        this.Materiais = Materiais;
        base.Ususario.ID = Cod_Usuario;
    }
}
public class RCS : RC
{
    [Required(ErrorMessage = "Campo Serviço é obrigatório!")]
    public String Servico { get; set; }

    public DateTime DtaInicial { get; set; }

    public DateTime DtaFinal { get; set; }

    public RCS()
    {

    }

    public RCS(int ID, String Numero, Obra Obra, String Servico, DateTime Data, DateTime DtaInicial, DateTime DtaFinal, int Cod_Usuario)
    {
        base.ID = ID;
        base.Numero = Numero;
        base.Obra = Obra;
        this.Servico = Servico;
        base.Data = Data;
        this.DtaInicial = DtaInicial;
        this.DtaFinal = DtaFinal;
        base.Ususario.ID = Cod_Usuario;
    }

}