认识EF框架中Attach与Entry
作者:互联网
一.Attach(实体对象)
1.含义:将实体对象附加到上下文中;执行后的状态为unChanged。
2.返回值:实体对象
3.Attach执行成功的前提:
(1).如果上下文中已经存在与实体对象键值相同的对象A,则要求实体对象的内存地址必须与对象A相同;
否则报错:“已有相同键值的对象存在上下文中......”。
(2).如果上下文中不存在与实体对象键值相同的对象,则要求实体对象的内存地址必须不在上下文中;
否则会报错,系统认为在修改键值,这是不允许的。
二.Entry(实体对象)
1.含义:获取实体对象的代理类
2.返回值:代理类对象
3.如果实体对象不在当前上下文中(指内存地址),则代理类对象的State为Detached,
否则,为上下文中相应所处状态。
————————————————
版权声明:本文为CSDN博主「酸菜鱼和青椒鱼我都可以」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u013986317/article/details/80318865
标签:实体,对象,EF,Attach,键值,Entry,上下文,内存地址 来源: https://www.cnblogs.com/wl-blog/p/16500853.html