您的位置:首页 > 其它

EF中增删改查

2015-12-19 23:50 267 查看
一.先看增加

HKSJ_USERS user = new HKSJ_USERS();
user.LoginName = "ssss";
user.Mail = "ssss";
user.PassWord = "ssss";
user.Plane = "ssss";
user.UserName = "ssss";
user.cardNo = "ssss";
user.phone = "ssss";
//3、 告诉EF咱们对上面的实体做一个插入操作
dbContext.HKSJ_USERS.Add(user);
dbContext.SaveChanges();


//这一步,也可以用EF标记达到相同的目的
dbContext.Entry<HKSJ_USERS>(user).State = EntityState.Added;
//告诉上下文把实体的变化保存到数据库里面去。
dbContext.SaveChanges();


二.删除

HKSJ_USERS user = new HKSJ_USERS();
user.ID = 1;
dbContext.Entry<HKSJ_USERS>(user).State = EntityState.Deleted;   //根据主键进行删除
dbContext.SaveChanges();

我们有时候根据Id查询出实体时,就可以直接用remove删除

var entity=dbContext.Set<T>().Find(id);
dbContext.Set<T>.Remove(entity);
dbContext.SaveChanges();




三.修改

HKSJ_USERS user = new HKSJ_USERS();
user.LoginName = "ssss111--------";
user.Mail = "ssss";
user.PassWord = "ssss";
user.Plane = "ssss";
user.UserName = "ssss";
user.cardNo = "ssss";
user.phone = "ssss";
user.ID = 8;//修改删除的时候指定id

//告诉上下文咱们的对此实体进行更新操作。
dbContext.Entry<HKSJ_USERS>(user).State = System.Data.EntityState.Modified;

//告诉上下文把实体的变化保存到数据库里面去。
dbContext.SaveChanges();//执行sql脚本的地方。

DbEntityEntry<Models.BlogArticle> entry = db.Entry<Models.BlogArticle>(model);

//**如果使用 Entry 附加 实体对象到数据容器中,则需要手动 设置 实体包装类的对象 的 状态为 Unchanged**
//**如果使用 Attach 就不需要这句
entry.State = System.Data.EntityState.Unchanged;

//0.2标识 实体对象 某些属性 已经被修改了
entry.Property("ATitle").IsModified = true;
entry.ProEperty("AContent").IsModified = true;



四.查询

dbContext.HKSJ_USERS.Select(s=>s);  //全部查询


结论:当进行删除,修改时,用标记更加方便
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: