Add |
1 #region 1.0 新增+void Add() 2 /// <summary> 3 /// 新增 4 /// </summary> 5 static void Add() 6 { 7 //1.创建实体对象,使用对象初始化器,初始化对象 8 Studnet stu = new Studnet() 9 { 10 //给字段名赋值 11 s_Name = "刘德华", 12 s_Sex = "男", 13 s_Age = 23, 14 c_ID = 1, 15 16 }; 17 18 //2.创建EF数据上下文对象,通过EF,新增到数据库。 19 DB_USERSEntities db = new DB_USERSEntities(); 20 21 22 //3将对象stu加入到数据上下文的Student集合中 23 db.Studnet.Add(stu); 24 25 //4.调用数据上下文的保存方法,将对象保存到数据库 26 db.SaveChanges(); 27 28 //------测试代码-------------- 29 Console.WriteLine("新增成功"); 30 31 } 32 #endregion
Modify |
修改很智能的,在生成SQl语句的时候,只是生成你修改过的某个列的字段的SQL语句,这个可以通过SQLServer工具栏里面的SQL Server profiler工具侦听到。
1 #region 2.0 修改(先查询再修改) 2 /// <summary> 3 /// 修改--(对于修改,官方标准的修改是先查询出要修改的数据,然后进行修改) 4 /// </summary> 5 static void Modify() 6 { 7 //创建数据上下文对象 8 DB_USERSEntities db = new DB_USERSEntities(); 9 10 //FirstOrDefault返回结果的第一个元素 11 Studnet stu = db.Studnet.Where(s => s.s_ID == 10).FirstOrDefault(); 12 13 Console.WriteLine(string.Format("修改前的信息是{0} :", stu.ToString())); 14 15 //修改数据 16 stu.s_Name = "张惠妹"; 17 18 //重新保存到数据库 19 db.SaveChanges(); 20 21 //------测试代码--------------------------------// 22 Console.WriteLine("修改成功"); 23 Console.WriteLine(string.Format("修改后的信息是{0} :", stu.ToString())); 24 } 25 26 #endregion
Query |
//这里会查询到的结果是对象,就是类似于,system.什么什么。这是因为ToString()方法是Object对象的方法,这里我们需要来对Student对象,重写一个Tostring方法。
//因为T4模板,会在每次保存的时候,自动覆盖之前的修改,重新生成。所以需要为student写一个部分类,在部分类里面重写Tostring()方法
1 #region 3.0 简单查询 2 /// <summary> 3 /// 查询 4 /// </summary> 5 static void Query() 6 { 7 //创建数据上下文对象 8 DB_USERSEntities db = new DB_USERSEntities(); 9 10 //查询 11 List<Studnet> stu= db.Studnet.Where(s => s.s_Name == "刘德华").ToList(); 12 13 //------测试代码----------------------------------------// 14 //遍历查询到的数据 15 stu.ForEach(s => Console.WriteLine(s.ToString())); 16 } 17 #endregion
Delete |
//删除按理说也是和修改一样,需要先查出来要删除的数据,然后删除,但这里不这么做
db.表名.Remove(对象); //此方法只是标记了当前对象为删除状态,要删除需要先加到上下文中。
1 #region 4.0 删除 2 /// <summary> 3 /// 删除 4 /// </summary> 5 static void Delete() 6 { 7 DB_USERSEntities db = new DB_USERSEntities(); 8 9 //测试删除指定的数据(创建要删除的对象) 10 Studnet stu = new Studnet() { s_ID=8}; 11 //附加到EF中 12 db.Studnet.Attach(stu); 13 //标记为删除 14 db.Studnet.Remove(stu); 15 //执行删除 16 db.SaveChanges(); 17 18 //--------测试代码---------------// 19 Console.WriteLine("删除成功"); 20 21 } 22 #endregion