使用ADO.NET实体数据模型

前景:要操作的数据表必须添加主键(方式:进入数据库-->数据表名-->设计-->列名右键-->设置主键)

1)、项目名右键-->新建项-->ADO.NET数据模型

选择第一个“来自数据库的EF设计器”就行

2)、操作数据表的增删改查

 这个对象可以声明成全局的上下文

StudentEntities dbContext = new StudentEntities();

2.1)、增

 Students stu = new Students();
              stu.StudentName = "李四";
             stu.StudentSex = "男";
              stu.StudentAge = 19;
             stu.StudentProvince = "上海";
             stu.StudentPhone = "17468523001";
  
              //写法一:
             //dbContext.Students.Add(stu);
             //写法二:
             dbContext.Entry<Students>(stu).State = System.Data.Entity.EntityState.Added;
 
         //告诉上下文把实体的变化保存到数据库里面去,返回受影响行数
             int i = dbContext.SaveChanges();        //三元表达式
             string str = i == 1 ? "添加成功" : "添加失败";
             Console.WriteLine(str);

2.2)、删

  Students stu = new Students();
             stu.StudentNO = 1833200159;
 
             dbContext.Entry<Students>(stu).State = System.Data.Entity.EntityState.Deleted;
             int i = dbContext.SaveChanges();
             string str = i == 1 ? "删除成功" : "删除失败";
             Console.WriteLine(str);

2.3)、修改整条数据

 Students stu = new Students();
              stu.StudentNO = 1833200160;
              stu.StudentName = "露丝";
              stu.StudentAge = 0;
              stu.StudentSex = "女";
              stu.StudentProvince = "";
              stu.StudentPhone = "";
  
              //将当前实例附加到上下文来处理
             dbContext.Students.Attach(stu);
 
             //写法一:
             //这里修改了名字和性别,因为其他的属性字段是不可空的所以为了通过验证必须
             //赋值(赋上了任意的值,但是我们并没有保存这些更改)
             //dbContext.Entry<Students>(stu).Property("StudentName").IsModified = true;
             //dbContext.Entry<Students>(stu).Property("StudentSex").IsModified = true;
 
             //写法二:Lambda表达式
             dbContext.Entry<Students>(stu).Property<string>(s => s.StudentName).IsModified = true;
             dbContext.Entry<Students>(stu).Property<string>(s => s.StudentSex).IsModified = true;
 
             int i = dbContext.SaveChanges();
            string str = i == 1 ? "修改成功" : "修改失败";
             Console.WriteLine(str);

2.4)、查询整张数据表

 foreach (var item in dbContext.Students)
             {
                 //打印整张表的学号和姓名
                 Console.WriteLine("学号: " + item.StudentNO + "    姓名: " + item.StudentName);
             }

2.5)、Linq表达式按条件查询数据

            //查询整张表女生的信息
             var temp = from s in dbContext.Students
                        where s.StudentSex == "女"
                        select s;
             foreach (var item in temp)
             {
                 //打印女生的信息
                 Console.WriteLine(item.StudentName);
             }

 

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值