关于EF中ApplyCurrentValues和ApplyOriginalValues区别
关于EF中ApplyCurrentValues和ApplyOriginalValues区别:两者都是编辑数据时使用。
//
// 摘要:
// 将 System.Data.Objects.ObjectStateEntry 的 System.Data.Objects.ObjectStateEntry.CurrentValues
// 属性设置为与所提供对象的属性值相匹配。
//
// 参数:
// currentEntity:
// 具有要应用于原始对象的属性更新的已分离对象。
//
// 返回结果:
// 已更新的对象。
public TEntity ApplyCurrentValues(TEntity currentEntity);
参数currentEntity的取值方式有两种
(1)从内存中查出来的对象,编辑你需要编辑的字段,然后传入。
var user = db.Users.Where(m => m.ID== ID).FirstOrDefault();
user.Age = 10;
user.Sex="M";
db.CreateObjectSet<Users>().ApplyCurrentValues(user);
db.SaveChanges() ;
(2)用new 关键字创建的新对象,此处注意,创建的对象必需满足数据表约束,然后传入。
db.CreateObjectSet<Users>().ApplyCurrentValues(new Users(){
ID = ID/*注意:此处的ID必需是数据库中存在的*/,
Age=10,
Sex="M"
});
db.SaveChanges() ;
//
// 摘要:
// 将 System.Data.Objects.ObjectStateEntry 的 System.Data.Objects.ObjectStateEntry.OriginalValues
// 属性设置为与所提供对象的属性值相匹配。
//
// 参数:
// originalEntity:
// 具有要应用于原始对象的属性更新的已分离对象。
//
// 返回结果:
// 已更新的对象。
public TEntity ApplyOriginalValues(TEntity originalEntity);
参数originalEntity的取值方式只有一种
(1)从内存中查出来的对象,编辑你需要编辑的字段,然后传入。
var user = db.Users.Where(m => m.ID== ID).FirstOrDefault();
user.Age = 10;
user.Sex="M";
db.CreateObjectSet<Users>().ApplyCurrentValues(user);
db.SaveChanges() ;
关于EF中ApplyCurrentValues和ApplyOriginalValues区别的更多相关文章
- MVC EF中Attach和Entry区别
EF:加入容器三种方式-->查询,attach,entry.不在容器里,不能用remove,add等方法. 1.0 使用Attach可能会出错.//attach 意思:附上; 贴上,系;var ...
- EF中逆变和协变
EF中的增删改查: 实现步骤: 1.声明一个EF的上下文. bjhksjEntities dbContext = new bjhksjEntities(); 2.声明一个实体. HKSJ_USERS ...
- Linux下 ps -ef 和 ps aux 的区别及格式详解
原文:https://www.cnblogs.com/5201351/p/4206461.html Linux下ps -ef和ps aux的区别及格式详解 Linux下显示系统进程的命令ps,最常用的 ...
- easyui datagrid 禁止选中行 EF的增删改查(转载) C# 获取用户IP地址(转载) MVC EF 执行SQL语句(转载) 在EF中执行SQL语句(转载) EF中使用SQL语句或存储过程 .net MVC使用Session验证用户登录 PowerDesigner 参照完整性约束(转载)
easyui datagrid 禁止选中行 没有找到可以直接禁止的属性,但是找到两个间接禁止的方式. 方式一: //onClickRow: function (rowIndex, rowData) ...
- 数据库事务及其EF中如何处理事务
一.基础知识 1) 使用事务级别ReadUnCommited 会产生脏读现像,意味着读取到的为UnCommited(未提交)的数据.怎么理解呢?在使用该隔离级别的事务开始后.更新了数据 ...
- top、ps -ef、ps aux的区别及内容详解
1.top和ps的区别 ps是静态查看进程--------top是动态(持续监控)进程 ps只是查看进程-----------top还可以监视系统性能,如平均负载,cpu和内存的消耗 2.ps -ef ...
- 1.【使用EF Code-First方式和Fluent API来探讨EF中的关系】
原文链接:http://www.c-sharpcorner.com/UploadFile/3d39b4/relationship-in-entity-framework-using-code-firs ...
- 2.EF中 Code-First 方式的数据库迁移
原文链接:http://www.c-sharpcorner.com/UploadFile/3d39b4/code-first-migrations-with-entity-framework/ 系列目 ...
- EF中扩展出Between操作符 (修订版)
随手记录一下,这是针对原文错误的修改. 原文:EF中扩展出Between操作符 直接使用是错误的,修改后的扩展方法: /// <summary> /// 扩展 Between 操作符 // ...
随机推荐
- SQLite入门与分析(七)---浅谈SQLite的虚拟机
写在前面:虚拟机技术在现在是一个非常热的技术,它的历史也很悠久.最早的虚拟机可追溯到IBM的VM/370,到上个世纪90年代,在计算机程序设计语言领域又出现一件革命性的事情——Java语言的出现,它与 ...
- ANDROID_MARS学习笔记_S01原始版_010_ContentProvider
一.简介 一.代码1.xml(1)main.xml <?xml version="1.0" encoding="utf-8"?> <Linea ...
- Native Application 开发详解(直接在程序中调用 ntdll.dll 中的 Native API,有内存小、速度快、安全、API丰富等8大优点)
文章目录: 1. 引子: 2. Native Application Demo 展示: 3. Native Application 简介: 4. Native Ap ...
- 忘记commit的一次教训
由于业务需求,已经上线的系统新增加了一些需求,其中一个需求是,从一个SQLSERVER数据库导入数据到生产的ORCLE数据库, 由于我的失误导致系统上线后 生产的Oracle数据没有导入成功,但是在本 ...
- AFNetworking 2.0 获取json数据时,返回 NSLocalizedDescription=Request failed: unacceptable content-type: text/html, 解决方法.
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager]; manager.responseSe ...
- VS2010中的调试技巧
作者: scottgu 这是我的博客中关于VS 2010和.NET 4发布系列的第二十六篇文章. 今天的博文将介绍Visual Studio中的一些实用调试技巧.这是受我朋友Scott Cate (他 ...
- CLR C++ Set Word CustomDocumentProperties
// WordIssue.cpp : main project file. #include "stdafx.h" using namespace System; using na ...
- lightoj 1011 (状态压缩dp)
思路:状态压缩dp,设dp[i][j] 表示前i行,状态为j时的最大值,状态定义为:若前i行中取了第x列那么j的二进制位中第x位为1,否则为0,最后答案就是dp[n-1][(1 << n) ...
- HDU 1953
#include<stdio.h> #include<math.h> long long int euler(long long int n) { long long int ...
- 浅谈PetShop之使用存储过程与PLSQL批量处理(附案例)
1 大概思路 备注:黄色为影响参数 2 PetShop4的经典数据库连接代码回顾 PetShop4有3个函数,具体有: ExecuteReader:可以读一个表的记录,只能读不 ...