EF Core的CRUD(增删改查)基本操作

2022-04-28 12:37:39

一、增加(C)

单笔增加

        //添加        static void Add()        {            using (var db = new Entities())            {                Student stu1 = new Student                {                    Name = "李四",                    Age = 19,                    Adress = "合肥",                    PhoneNumber = "13200000000"                };                //把实体对象附加到上下文                db.Student.Add(stu1);                //db.Entry(stu1).State=System.Data.Entity.EntityState.Added;                  var res = db.SaveChanges();                if (res > 0)                {                    Console.WriteLine("添加数据成功!");                }            }        }

批量增加

  //批量处理        static void AddBatch()        {            using (var db = new Entities())            {                for (int i = 1; i < 10; i++)                {                    var stu1 = new Student                    {                        Name = "Rimche" + i,                        Age = 19 + i,                        Adress = "合肥",                        PhoneNumber = "1730000000" + i                    };                    db.Student.Add(stu1);                }                //可以进行其他操作                db.SaveChanges();            }        }

二、查询

普通查询

        //查询        static void Query()        {            using (var db = new Entities())            {                //根据ID进行查询                var stu1 = db.Student.Find(2);                var stu11 = db.Student.Where(x => x.Id == 1).FirstOrDefault();                //根据年龄查找,多个结果时,返回第一个                var stu2 = db.Student.Where(s=>s.Age==18).FirstOrDefault();                Console.WriteLine(stu1.Name);                Console.WriteLine(stu2.Name);                Console.WriteLine("======延迟查询======");                //根据条件,返回IQueryable,说明是延迟查询                var query = db.Student.Where(s => s.Id > 3);                foreach (var item in query)                {                    Console.WriteLine(item.Id + "t" + item.Name);                }                //查询所有                Console.WriteLine("======查询所有======");                var queryall=db.Student.ToList();                foreach (var item in queryall)                {                    Console.WriteLine(item.Id + "t" + item.Name);                }            };        }

分页查询

        //分页查询       static void PagingQuery(int pageIndex,int pageSize)        {            using (var db=new Entities())            {                //分页一定要排序                var query = db.Student.OrderBy(s=>s.Id).Skip((pageIndex -1)*pageSize).Take(pageSize).ToList();                foreach (var item in query)                {                    Console.WriteLine(item.Id + "t" + item.Name);                }            }        }

三、更新

提供两种更新方式

        //更新        static void Update()      var stu = db.Student.Find(2);//也可以从数据库查询到                //方式一                //db.Student.Remove(stu);                //方式二                db.Entry(stu).State = System.Data.Entity.EntityState.Deleted;                int result = db.SaveChanges();                Console.WriteLine(result);            }        }

到此这篇关于EF Core增删改查CRUD的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持我们。