Linq基础+Lambda表达式对数据库的增删改及简单查询
一、Linq to sql 类
高集成化的数据库访问技术
使用Linq可以代替之前的Ado.Net,省去了自己敲代码的实体类和数据访问类的大量工作
实体类:
添加一个Linq to sql 类 ----选择要使用的数据库---- 拖入要使用的表 需要立即保存 就相当于创建实体类
如果进行属性扩展,在App_Code下添加类,类名同表名一致。将该类在访问修饰符后加上partial,将该类定为实体类的一部分
数据访问类:
不用在App_Code下再建数据访问类了。
直接在使用数据访问类的地方用数据库上下文进行编写。
conn.Users.ToList(); //是将Users表转化为一个泛型集合。也就相当于查询全部的方法
二、利用Linq对数据库进行相关操作
1、添加数据
每一条数据都是一个实体类对象。先将其实例化出来,再给对象的每个属性赋值。
在数据访问类中进行添加数据操作
添加的方法:con.Users.InsertOnSumbit(对象);
方法执行结束后提交对数据库的更改:con.SubmitChanges();
2、删除数据
删除数据前要先查到这条数据再进行删除操作
通过ids进行查询这条数据返回一个对象
Users u = con.Users.Where(r=>r.ids.Tostring()==ids).FirstOrDefault();
where括号内接的是Lambda表达式,r代表一个Users对象,=>是基本格式,FirstOrDefault()返回第一条数据或者返还空
如果u不是空,则在数据访问类中进行删除。
con.Users.DeleteOnSubmit(对象);
con.SubmitChanges();
3、数据修改
数据的修改同样也是需要先查到这条数据,将返回的这个对象的要修改的属性进行重新赋值
最后con.SubmitChanges();
4、简单数据查询
直接在数据访问类中根据对象的属性进行查询,多个查询条件中间用 && 连接;
如 con.Users.Where(r=>r.UserName=="zhangsan" && r.PassWord=="123").FirstOrDefault();