在上一篇文章中讲解了如何生成EF的DBFirst模式,接下来讲解如何使用DBFirst模式实现数据库数据的增删改查
一、新增数据
新增一个Student,代码如下:
static void Add()
{
using (StudentSystemEntities dbContext = new StudentSystemEntities())
{
// 定义Student对象
Student stu = new Student()
{
StudentName = "花千骨",
Sex = "女",
Age = 3422,
Major = "舞蹈专业",
Email = "2345678911@qq.com"
};
// 将EF执行的SQL语句输出到控制台
dbContext.Database.Log += p => Console.WriteLine(p);
// 只是内存上面的操作
dbContext.Students.Add(stu);
// 保存的数据库
dbContext.SaveChanges();
Console.WriteLine("保存成功");
}
}
在Main()方法里面调用Add()方法,结果:
查看数据库结果:
从上面的两个截图中可以看出数据新增成功。
二、查询数据
查询StudentName是唐僧的学生信息并输出:
static void Query()
{
using (StudentSystemEntities dbContext = new StudentSystemEntities())
{
List<Student> list = dbContext.Students.Where(p => p.StudentName == "唐僧").ToList<Student>();
list.ForEach(p =>
{
Console.WriteLine("姓名:"+p.StudentName+",年龄:"+p.Age+",专业:"+p.Major+",邮箱:"+p.Email);
});
}
}
在Main()方法里面调用Query(),结果:
三、修改数据
修改StudentName为花千骨的学生年龄:
static void Edit()
{
using (StudentSystemEntities dbContext = new StudentSystemEntities())
{
// 将EF执行的SQL语句输出到控制台
dbContext.Database.Log += p => Console.WriteLine(p);
// 查询要修改的数据,FirstOrDefault表示查询到的第一条数据
Student student = dbContext.Students.Where(p => p.StudentName == "花千骨").FirstOrDefault();
// 保存修改
student.Age = 234;
dbContext.SaveChanges();
Console.WriteLine("修改成功");
}
}
结果:
查看数据库数据:
四、删除数据
删除新添加的数据:
static void Delete()
{
using (StudentSystemEntities dbContext = new StudentSystemEntities())
{
// 将EF执行的SQL语句输出到控制台
dbContext.Database.Log += p => Console.WriteLine(p);
// 先查询然后在删除
Student stu = new Student()
{
StudentID=18
};
// 附加到集合中
dbContext.Students.Attach(stu);
// 删除的SQL语句是根据stu的StudentID生成的
dbContext.Students.Remove(stu);
// 保存
dbContext.SaveChanges();
Console.WriteLine("删除成功");
}
}
结果:
查看数据库:
数据删除成功。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。