EF Code First 使用继承类的一个问题
2016-05-13 13:26
288 查看
1.
如果在CodeFirst 中使用继承关系,并且两个继承类都有对应的数据表的话,
添加父类表数据的时候,子类表数据也会同时添加
子类
/// <summary>
/// 混合明文表
/// </summary>
[Table("PlainText")]
public class PlainText
{
[Key]
[StringLength(50)]
public string Content { get; set; }
}父类
/// <summary>
/// 数字明文表
/// </summary>
[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();结果:
如果在CodeFirst 中使用继承关系,并且两个继承类都有对应的数据表的话,
添加父类表数据的时候,子类表数据也会同时添加
子类
/// <summary>
/// 混合明文表
/// </summary>
[Table("PlainText")]
public class PlainText
{
[Key]
[StringLength(50)]
public string Content { get; set; }
}父类
/// <summary>
/// 数字明文表
/// </summary>
[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();结果:
相关文章推荐
- js判断当前访问客户端是ios或安卓或微信
- win8(64位)下memcache安装时报错“ failed to install service or service already installed”
- Activity卡顿、变慢的原因
- bzoj 3820: 虫逢 hash
- Map的实例
- HDU 2098 分拆素数和 (素数基础)
- 函数对象
- tmpfs(/dev/shm)
- Eclipse错误: 找不到或无法加载主类或项目无法编译10种解决大法!
- 日常开发——Android网络请求openConnection()源码分析
- Sublime Text 关闭自动更新提示
- 常用第三方
- 最全面的65条最常用正则表达式
- 求斐波那契数列的第n项
- Z字形编排问题
- 目标检测(1)
- abort()函数
- windows server 2003 系统安装蓝屏问题
- dpkg的用法
- 工作中最全最常用的正则表达式