【2017-06-01】Linq基础+Lambda表达式实现对数据库的增删改查

一、Linq to sql 类

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

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

实体类:

添加一个Linq to sql 类 ----选择要使用的数据库---- 拖入要使用的表  就相当于实体类建完了。

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

数据访问类:

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

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

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

 

添加数据:

每一条数据都是一个实体类对象。先将其实例化出来

再给对象的每个属性赋值。

利用数据库上下文进行添加数据操作

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

执行要操作的方法:con.SubmitChanges();

 

 

 删除数据:

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

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

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

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

 如果u不是空,则利用数据库上下文进行删除。

con.Users.DeleteOnSubmit(对象);

con.SubmitChanges();

 

 

 数据的修改:

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

然后直接提交改变。

con.SubmitChanges();

 

 

 Lambda表达式

 

 con.Users.Where(r=>r.ids.Tostring()==ids).FirstOrDefault();返回满足条件的第一条数据或者返还空

 如果是两个条件查询的话用&&接

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

原文地址:https://www.cnblogs.com/qq609113043/p/6931362.html