【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();
【2017-06-01】Linq基础+Lambda表达式实现对数据库的增删改查的更多相关文章
- 【基础篇】js对本地文件增删改查
[基础篇] js对本地文件增删改查--增 js对本地文件增删改查--删 js对本地文件增删改查--改 js对本地文件增删改查--查
- 【基础篇】js对本地文件增删改查--查
前置条件: 1. 本地有安装node,点击传送门 项目目录: 1. msg.json内容 { "data": [ { "id": 1, "name&q ...
- 【基础篇】js对本地文件增删改查--改
前置条件: 1. 本地有安装node,点击传送门 项目目录: 1. msg.json内容 { "data": [ { "id": 1, "name&q ...
- 【基础篇】js对本地文件增删改查--删
前置条件: 1. 本地有安装node,点击传送门 项目目录: 1. msg.json内容 { "data": [ { "id": 1, "name&q ...
- 【基础篇】js对本地文件增删改查--增
前置条件: 1. 本地有安装node,点击传送门 项目目录: 1. msg.json内容 { "data": [ { "id": 1, "name&q ...
- [Android] SQLite数据库之增删改查基础操作
在编程中常常会遇到数据库的操作,而Android系统内置了SQLite,它是一款轻型数据库,遵守事务ACID的关系型数据库管理系统,它占用的资源非常低,可以支持Windows/Linux/Un ...
- mysql基础之mariadb对表中数据的增删改查
复习: 查看表:show tables; 创建表:create table 表名(字符类型); 删除表:drop table 表名; 对表的结构进行增删改查: 查看表结构:desc 表名; 修改表-添 ...
- Linq基础+Lambda表达式对数据库的增删改及简单查询
一.Linq to sql 类 高集成化的数据库访问技术 使用Linq可以代替之前的Ado.Net,省去了自己敲代码的实体类和数据访问类的大量工作 实体类: 添加一个Linq to sql 类 --- ...
- APS.NET MVC + EF (01)---Linq和Lambda表达式
1.1 Linq介绍 LINQ全称 Language Integrated Query(语言集成查询).为我们提供一种统一的方式来查询和操作各种数据. LINQ to Object:是针对实现了IEn ...
随机推荐
- meta 整理
< meta > 元素 概要 标签提供关于HTML文档的元数据.元数据不会显示在页面上,但是对于机器是可读的.它可用于浏览器(如何显示内容或重新加载页面),搜索引擎(关键词),或其他 we ...
- clamav 杀毒软件安装及使用配置
安装clamav 之前还需要安装zlib 要不然安装过程中会报错的. tar -zxvf zlib-1.2.3.tar.gz cd zlib-1.2.3 ./configure make make ...
- 设置spring-boot的logging
spring-boot默认使用logback来记录logger,spring-boot的包里面org.springframework.boot.logging.logback路径下面有一些配置文件,默 ...
- MOSFET使用与H桥驱动问题
0.小叙闲言 最开始学习三极管的时候,很注重它的工作原理,后来到了实际应用,就直接把三极管或MOSFET直接当作一个开关器件使用.直到前这几天,接触到MOSFET组成的H桥驱动电路时,发现它纯当作一个 ...
- stl_container容器和std_algorithm算法相同的函数
八.算法和容器中存在的功能相同的函数: 8.1.array: 8.1.1.fill. 1.在array中:void fill (const value_type& val); 2.在algor ...
- DirectFB 之 通过多Window实现多元素处理
图像 设计 采用多window的方式实现显示,因为每个window可以独立的属性,比如刷新频率,也是我们最关注的 示例 /*************************************** ...
- base 镜像 - 每天5分钟玩转容器技术(10)
上一节我们介绍了最小的 Docker 镜像,本节讨论 base 镜像. base 镜像有两层含义: 不依赖其他镜像,从 scratch 构建. 其他镜像可以之为基础进行扩展. 所以,能称作 base ...
- input file图片上传预览效果
两种方法,方法一: js代码: //头像上传预览 $("#up").change(function() { var $file = $(this); var fileObj = $ ...
- 分别用css3、JS实现图片简单的无缝轮播功效
本文主要介绍分别使用CSS3.JS实现图片简单无缝轮播功效: 一.使用CSS3实现:利用animation属性 (实现一张一张的轮播,肉眼只看见一张图片) HTML部分比较简单,两个div下包着几个i ...
- single number i && ii && iii
Problem statement Elementary knowledge: There is a popular question when I seeked my job at Beijing: ...