EF Code First 使用继承类的一个问题

1.

如果在CodeFirst 中使用继承关系,并且两个继承类都有对应的数据表的话,

添加父类表数据的时候,子类表数据也会同时添加

子类

/// 
/// 混合明文表
/// 
[Table("PlainText")]
public class PlainText
{
    [Key]
    [StringLength(50)]
    public string Content { get; set; }
}
父类

/// 
/// 数字明文表
/// 
[Table("PlainText_Number")]
public class PlainText_Number : PlainText
{
}

测试:

string str = "abc";
AutoGenerateChar _generate = new AutoGenerateChar(str);
_generate.OnGenerateOne += (item) =>
{
    //添加字符到数据库
    try
    {
        IPlainText_Number _number = ConcreteFactory.GetPlainText_Number();
        _number.Add(item);
    }
    catch (Exception ex)
    {
        Console.WriteLine("添加失败,item="+item);
    }
};
_generate.OnEnd += () =>
{
    Console.WriteLine("最终数量:" + ConcreteFactory.GetPlainText_Number().GetDbSet().Count());
};
_generate.Start();
结果:

EF Code First 使用继承类的一个问题_第1张图片EF Code First 使用继承类的一个问题_第2张图片

你可能感兴趣的:(EntiryFramework,Ef,for,Mysql,CodeFirst)