Entity Framework使用DataBase First模式實現數據庫的增刪改查

在上一篇文章中講解瞭如何生成EF的DBFirst模式,接下來講解如何使用DBFirst模式實現數據庫數據的增刪改查

一、新增數據

新增一個Student,代碼如下:

static void Add()
{
     using (StudentSystemEntities dbContext = new StudentSystemEntities())
      {
          // 定義Student對象
          Student stu = new Student()
          {
               StudentName = "花千骨",
               Sex = "女",
               Age = 3422,
               Major = "舞蹈專業",
               Email = "[email protected]"
           };
           // 將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("刪除成功");
       }
}

結果:

查看數據庫:

數據刪除成功。

以上就是本文的全部內容,希望對大傢的學習有所幫助,也希望大傢多多支持WalkonNet。

推薦閱讀: