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();
Linq基础+Lambda表达式对数据库的增删改及简单查询的更多相关文章
- Django基础学习四_数据库的增删改查
今天主要学习两个东西 1.如何对数据库做增删改查 2.如果将数据库中的数据用html的方式返回到前台 一.对数据库中增删改查操作 1.首先需要先见表,见表的方法我们在“http://www.cnblo ...
- 【2017-06-01】Linq基础+Lambda表达式实现对数据库的增删改查
一.Linq to sql 类 高集成化的数据库访问技术 使用Linq可以代替之前的Ado.Net.省去了自己敲代码的实体类和数据访问类的大量工作. 实体类: 添加一个Linq to sql 类 -- ...
- Java数据库连接——JDBC基础知识(操作数据库:增删改查)
一.JDBC简介 JDBC是连接java应用程序和数据库之间的桥梁. 什么是JDBC? Java语言访问数据库的一种规范,是一套API. JDBC (Java Database Connectivit ...
- Yii数据库操作增删改查-[增加\查询\更新\删除 AR模式]
在Yii的开发中常常需要去使用Yii的增删改查方法,这些方法又可以多次变化和组合,带来全方位的实现对数据库的处理,下面对这些方法做一些简单的整理和梳理,有遗漏或是BUG,敬请指出.灰常感谢!!! 一. ...
- SQL基础语法select|insert|update|delete(增删改查) 简单使用
以下案列以此表举例 1.select(查询) select简单的查询分为两种 注:字段也就是表结构中的列的名称 第一种: select 字段名 from 表名 此种查询只列出你所需要查询的字段, ...
- LInq 与lambda表达式
LInq 与lambda表达式 LinQ是我们常用的技术之一.因为我们绕不开的要对数据进行一系列的调整,如 排序. 条件筛选.求和.分组.多表联接 等等. lambda则是我们常用的语法糖,配合lin ...
- 使用LINQ、Lambda 表达式 、委托快速比较两个集合,找出需要新增、修改、删除的对象
本文需要对C#里的LINQ.Lambda 表达式 .委托有一定了解. 在工作中,经常遇到需要对比两个集合的场景,如: 页面集合数据修改,需要保存到数据库 全量同步上游数据到本系统数据库 在这些场景中, ...
- SQL、Linq和Lambda表达式 的关系
首先说说这三者完全是三种不同的东西,SQL是结构化查询语言(Structured Query Language)简称,这大家再熟悉不过了,下面主要介绍LINQ和Lambda表达式的基本概念以及同一查询 ...
- c#封装DBHelper类 c# 图片加水印 (摘)C#生成随机数的三种方法 使用LINQ、Lambda 表达式 、委托快速比较两个集合,找出需要新增、修改、删除的对象 c# 制作正方形图片 JavaScript 事件循环及异步原理(完全指北)
c#封装DBHelper类 public enum EffentNextType { /// <summary> /// 对其他语句无任何影响 /// </summary> ...
随机推荐
- The Apache HBase™ Reference Guide
以下内容由http://hbase.apache.org/book.html#getting_started节选并改编而来. 运行环境:hadoop-1.0.4,hbase-0.94.22,jdk1. ...
- c#常用数值范围汇总
short.MaxValue 32767 short.MinValue -32768 int.MaxValue 2147483647 int.MinValue -2147483648 long.Max ...
- css 元素溢出
css元素溢出: 当子元素的尺寸超过父元素的尺寸时,需要设置父元素显示溢出的子元素的方式,设置的方法是通过overflow属性来设置. overflow的设置项: (1)visible 默认值 内容不 ...
- QT杂记(网上资料整理而成)
1.新建工程时,Qwidget和Qdialog和Qmianwindow三者的区别? QWidget是所有图形界面的基类QMainWindow是一个提供了菜单.工具条的程序主窗口QDialog是对话框. ...
- div+css显示两行或三行文字,超出用...表示
<style> .comment_inner{ width: 200px; word-break: break-all; text-overflow: ellipsis; display: ...
- Android 进程间的通信
localsocket: https://blog.csdn.net/azhengye/article/details/73863404 https://www.cnblogs.com/basta ...
- 如何使用iOS开发者授权以及如何申请证书
如何使用iOS开发者授权以及如何申请证书 在邮件里有一个Login按钮,点击后可以进入Apple Developer会员中心.点击图中的iOS Provisioning Portal,进入开发者授权设 ...
- php 一行代码解决二维数组去重
array_unique($array, SORT_REGULAR);
- Troubleshooting tips for using Java on Windows 8
This article applies to: Platform(s): Windows 8 Will Java run in Start screen on Windows 8? Microsof ...
- JL MTK 安防网关的 wifi 吞吐测试
基本配置: 删除桥接中的 eth3 : brctl delif br0 eth3 设置eth3的ip: ifconfig eth3 192.168.1.100 开启数据转发: ech ...