本文共 2248 字,大约阅读时间需要 7 分钟。
17-2-23
EF数据库表一定要有主键
【EF实现修改和删除】
ctx.Entry<UserInfoTable>(user).State = System.Data.Entity.EntityState.Modified;#region 增加操作 /* //1.实例化一个上下文对象 var ctx = new UserInfoEntities(); //2.实例化一个模型对象并且给对象赋值 UserInfoTable user = new UserInfoTable(); user.UserName = "Futao00"; user.Pwd = "1223"; user.Sex = "男"; user.Tel = "18797811992"; //3.对数据库进行一个添加操作(告诉EF实体操作的类型curd) ctx.UserInfoTable.Add(user); //ctx.UserInfoTable.Remove(); //4.同步到数据库,这个时候数据库才会进行curd ctx.SaveChanges(); */ #endregion
//修改的时候要指定主键的值,只能根据主键进行crud,所以EF的数据表必须设置自己的主键
#region 修改删除操作 //1.实例化上下文对象 UserInfoEntities dbContext = new UserInfoEntities(); //2.实例化实体对象,同时指定对象的主键和对象修改之后的值 UserInfoTable userA = new UserInfoTable(); userA.UserName = "Futao"; //指定主键 //userA.Tel = "xxx"; //userA.Pwd = "xxx"; //userA.Sex = "xxx";userA.Sex = "000000"; //3.告诉EF对该对象进行的操作 //dbContext.Entry(userA).State = System.Data.Entity.EntityState.Modified; //单独修改某一个属性的时候要先Attach上 dbContext.UserInfoTable.Attach(userA); //dbContext.Entry (userA).Property (u => u.Sex).IsModified = true; dbContext.Entry(userA).Property("Sex").IsModified = true; //dbContext.Entry (userA).State = System.Data.Entity.EntityState.Deleted; //4.保存到数据库 dbContext.SaveChanges(); #endregion #region 查询操作 UserInfoEntities dbContext = new UserInfoEntities(); //遍历所有数据 foreach (var v in dbContext.UserInfoTable) { Console.WriteLine(v.UserName + "\t" + v.Pwd + "\t" + v.Sex + "\t" + v.Tel); } //按条件查询Linq var tempSQL = from u in dbContext.UserInfoTable where u.Pwd == "123" select u.UserName + "\t" + u.Pwd + "\t" + u.Sex + "\t" + u.Tel; //再打印输出查询结果 foreach (var x in tempSQL) { Console.WriteLine(x); } #endregion
补充:实体Entity是什么,实体与模型Model之间的关系
lambda表达式 Linq【课后作业】
(以组为单位打包发送,邮件) 时间:下周一,17-2-27之前目标:实现课程信息的增删改查
备注:课程信息:课程编号(主键),课程名称,授课老师(教师编号),备注要求:
1.建立数据库,表 2.建立控制台程序,EF实体模型 3.实现表的增删改查,其中增,删,改提供SQL语句(数据库Profilter监测到的SQL语句)转载地址:http://odlzl.baihongyu.com/