文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Entity Framework使用DataBase First模式实现数据库的增删改查

2024-04-02 19:55

关注

在上一篇文章中讲解了如何生成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("删除成功");
       }
}

结果:

查看数据库:

数据删除成功。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯