Linq基础+Lambda表达式对数据库的增删改及简单查询

时间:2022-05-04 08:47:35

一、Linq to sql 类

高集成化的数据库访问技术

使用Linq可以代替之前的Ado.Net,省去了自己敲代码的实体类和数据访问类的大量工作

实体类:

添加一个Linq to sql 类 ----选择要使用的数据库---- 拖入要使用的表  需要立即保存 就相当于创建实体类

如果进行属性扩展,在App_Code下添加类,类名同表名一致。将该类在访问修饰符后加上partial,将该类定为实体类的一部分

Linq基础+Lambda表达式对数据库的增删改及简单查询

数据访问类:

不用在App_Code下再建数据访问类了。

直接在使用数据访问类的地方用数据库上下文进行编写。

Linq基础+Lambda表达式对数据库的增删改及简单查询

conn.Users.ToList();       //是将Users表转化为一个泛型集合。也就相当于查询全部的方法

二、利用Linq对数据库进行相关操作

1、添加数据

每一条数据都是一个实体类对象。先将其实例化出来,再给对象的每个属性赋值。

在数据访问类中进行添加数据操作

添加的方法:con.Users.InsertOnSumbit(对象);

方法执行结束后提交对数据库的更改:con.SubmitChanges();

Linq基础+Lambda表达式对数据库的增删改及简单查询

2、删除数据

删除数据前要先查到这条数据再进行删除操作

通过ids进行查询这条数据返回一个对象

Users u = con.Users.Where(r=>r.ids.Tostring()==ids).FirstOrDefault();

where括号内接的是Lambda表达式,r代表一个Users对象,=>是基本格式,FirstOrDefault()返回第一条数据或者返还空

如果u不是空,则在数据访问类中进行删除。

con.Users.DeleteOnSubmit(对象);

con.SubmitChanges();

Linq基础+Lambda表达式对数据库的增删改及简单查询

3、数据修改

数据的修改同样也是需要先查到这条数据,将返回的这个对象的要修改的属性进行重新赋值

最后con.SubmitChanges();

Linq基础+Lambda表达式对数据库的增删改及简单查询

4、简单数据查询

直接在数据访问类中根据对象的属性进行查询,多个查询条件中间用 && 连接;

如   con.Users.Where(r=>r.UserName=="zhangsan" && r.PassWord=="123").FirstOrDefault();