EF Attatch()方法附加对象
来源:互联网 发布:数据挖掘的一般过程 编辑:程序博客网 时间:2024/06/06 00:52
一、在EF中Attatch()方法用于将实体对象附加到数据库上线文
注:Attach()的附加是“无状态”的附加,需要使用Entry()方法获取配置DbEntityEntry的State操作状态,不然是无效的。
// // 摘要: // 将给定实体附加到集的基础上下文中。也就是说,将实体以“未更改”的状态放置到上下文中,就好像从数据库读取了该实体一样。 // // 参数: // entity: // 要附加的实体。 public virtual TEntity Attach(TEntity entity);
可用的EntityState状态:
这五种状态分别是:Detached-游离;UnChanged-没有变化;Added-添加;Deleted-删除;Modified-编辑。
Detached状态下的Entity不会被上下文(context)所捕获(track)。
当SavaChanged()方法执行期间,他会查看当前Entity的EntityState的值,决定是去新增(Added)、修改(Modified)、删除(Deleted)、什么也不做(UnChanged)。
二、使用EF 修改非数据库查询出的对象,方式如下:
TestOne _Context = new DBA.TestOne();//EF 修改 非数据库查询出来的对象Student stu = new Student(){ StuID = 3, StuName = "测试修改"};//以“未修改”状态附加实体到上下文_Context.Students.Attach(stu);//修改实体为“已修改”状态_Context.Entry(stu).State = System.Data.Entity.EntityState.Modified;int count = _Context.SaveChanges();Console.WriteLine(count);
更多:
EF批量操作数据之EntityFramework.Extended
EF 汇总函数使用注意事项Max()/Min()等
EF中查看上下文执行的Sql语句
阅读全文
0 0
- EF Attatch()方法附加对象
- EF无法附加没有EntityKey的对象
- EF添加和附加实体对象的状态
- EF - 添加Cloned对象
- 数据库附加对象-只读
- EF基本方法
- EF分页方法
- IIS附加进程方法
- 对象关系映射,ORM,EF
- EF-实体对象建立Dome
- EF实体对象变动跟踪
- 类与对象(附加)---day3
- vs+mysql+ef配置方法
- 数据库EF方法创建连接
- Ef框架使用 in 方法
- inno setup 附加数据库方法
- 附加MySQL数据库的方法
- ef
- 设计模式之工厂系列
- Linux的Bash变量
- 数据流图
- bzoj1728[Usaco2006 Open]Two-Headed Cows 双头牛 二分+染色
- Android多渠道打包实现不同的功能模块
- EF Attatch()方法附加对象
- activiti工作流学习总结
- 各个算法的时间复杂度和空间复杂度分析
- Java+Selenium3方法篇12-findElement之By TagName
- EMV规范(六)——处理限制
- [leetcode]: 69. Sqrt(x)
- Mentor Graphics Calibre 2017.1 Linux 1DVD寄生參數萃取
- 练习输出菱形图案
- 图像放缩中最近邻插值和双线性插值的基本原理