/// <summary>
/// EF添加数据
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Button1_Click(object sender, EventArgs e)
{
tb_one user = new tb_one();
user.Name = "测试一";
user.sex = true;
user.Address = "广东东莞市南城街道";
user.Aihao = "敲代码";
user.Photo = "/images/icon.png";
tb_qrcodeEntities db = new tb_qrcodeEntities();//EF上下文对象
db.tb_one.Add(user);//把数据添加到EF且添加添加标记
db.SaveChanges();//保存到数据库,返回受影响的行
Response.Write(user.ID);//自增编号
}
        /// <summary>
/// EF数据查询
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void BtnSearch_Click(object sender, EventArgs e)
{
tb_qrcodeEntities db = new tb_qrcodeEntities();//EF上下文对象
//var
IQueryable<tb_one> user = from u in db.tb_one
where u.ID ==
select u;
foreach (var userInfo in user)//EF延时加载机制,用到的时候才去查询
{
Response.Write(userInfo.Name);
}
}
        /// <summary>
/// EF查询部分列
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnSearch_Click(object sender, EventArgs e)
{
Model2Container db = new Model2Container();//EF上下文对象
var userInfoList = from u in db.Customer
where u.ID ==
select new{Uname=u.CustomerName,Upwd=u.CustomerPwd };
foreach (var userInfo in userInfoList)
{
Response.Write(userInfo.Uname + ":" + userInfo.Upwd); }
}

 
        /// <summary>
/// EF lambda表达式查询 分页查询 排序
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnSearch_Click(object sender, EventArgs e)
{
//lambda表达式方式查询
Model2Container db = new Model2Container();//EF上下文对象
//查询编号==33的所有数据
var userInfoList = db.Customer.Where<Customer>(u => u.ID == );
//升序排序
var userInfoList = db.Customer.Where<Customer>(U => true).OrderBy<Customer, int>(u => u.ID);
//降序排序
var userInfoList = db.Customer.Where<Customer>(U => true).OrderByDescending(u => u.ID);
//分页查询
int pageIndex = ;//查询第二页
int pageSize = ;//每页显示两条数据
//lambda分页查询===skip:表示跳过多少条记录,take:取多少条记录
var userInfoList = db.Customer.Where<Customer>(U => true).OrderByDescending(u => u.ID).Skip<Customer>((pageIndex - ) * pageSize).Take<Customer>(pageSize);
//linq分页查询===skip:表示跳过多少条记录,take:取多少条记录
var userInfoList = (from u in db.Customer
where u.ID >
orderby u.ID descending
select u).Skip<Customer>((pageIndex - ) * pageSize).Take<Customer>(pageSize);
foreach (var userInfo in userInfoList)
{
Response.Write(userInfo.CustomerName);
} }


        /// <summary>
/// EF删除数据
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void BtnDelete_Click(object sender, EventArgs e)
{
//第一种方法:先查出要删除的对象,再更新删除
tb_qrcodeEntities db = new tb_qrcodeEntities();//EF上下文对象
var userList = from u in db.tb_one
where u.ID ==
select u;
tb_one userInfo = userList.FirstOrDefault();//返回查找到的第一个元素
if (userInfo != null)
{
//db.tb_one.Remove(userInfo);
db.Entry<tb_one>(userInfo).State = System.Data.EntityState.Deleted;
db.SaveChanges();
}
else {
Response.Write("要删除的数据不存在!");
} //第二种方法:根据ID删除
tb_one userinfo1 = new tb_one() { ID=};
db.Entry<tb_one>(userinfo1).State = System.Data.EntityState.Deleted;
db.SaveChanges();
}
 /// <summary>
/// 删除指定会员的订单
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnDel_Click(object sender, EventArgs e)
{ //第一种方法:先查找出来再删除
Model2Container db = new Model2Container();//EF上下文对象
var orderInfoList = from u in db.OrderInfo
where u.CustomerID ==
select u;
foreach (var orderInfo in orderInfoList)
{
db.Entry<OrderInfo>(orderInfo).State = System.Data.EntityState.Deleted;
}
db.SaveChanges();
Response.Write("delete success!!!"); //第二种方法
Model2Container db = new Model2Container();//EF上下文对象
var Customer = (from u in db.Customer
where u.ID ==
select u).FirstOrDefault();
var orderInfoList = Customer.OrderInfo;
while (orderInfoList.Count > )
{
var orderInfo = orderInfoList.FirstOrDefault();
db.Entry<OrderInfo>(orderInfo).State = System.Data.EntityState.Deleted;
}
db.SaveChanges();
Response.Write("delete success!!!");
}


        /// <summary>
/// EF编辑数据
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void BtnEdit_Click(object sender, EventArgs e)
{
tb_qrcodeEntities db = new tb_qrcodeEntities();//EF上下文对象
var userList = from u in db.tb_one
where u.ID ==
select u;
tb_one userInfo = userList.FirstOrDefault();
if (userInfo != null)
{
userInfo.Name = "qrcode";
db.Entry<tb_one>(userInfo).State = System.Data.EntityState.Modified;
db.SaveChanges();
}
}

EF简单的CURD操作的更多相关文章

  1. ThinkPHP中简单的CURD操作

    前言 我们通过一个简答例子来简述CURD的操作.首先看一下数据库的样子,其中id为自增行,其它是varchar 一.查询操作 首先,创建在Controller文件夹下创建一个User控制器,在该控制器 ...

  2. 使用PHP操作SQL 完成简单的CURD操作

    1.从数据库出发,先建立测试数据,这里使用的MYSQL,通过脚本模式创建测试数据. SET NAMES UTF8; DROP DATABASE IF EXISTS disk; CREATE DATAB ...

  3. Node.js学习笔记(3) - 简单的curd

    这个算是不算完结的完结吧,前段时间也是看了好久的Node相关的东西,总想着去整理一下,可是当时也没有时间: 现在看来在整理的话,就有些混乱,自己也懒了,就没在整理,只是简单的记录一下 一.demo的简 ...

  4. 8天掌握EF的Code First开发系列之2 简单的CRUD操作

    本文出自8天掌握EF的Code First开发系列,经过自己的实践整理出来. 本篇目录 创建控制台项目 根据.Net中的类来创建数据库 简单的CRUD操作 数据库模式更改介绍 本章小结 本人的实验环境 ...

  5. 一个简单的ORM制作(CURD操作类)

    SQL执行类 CURD操作类 其他酱油类 此篇是为上篇文章填坑的,不知道上篇砸过来的砖头够不够,不够的话请大家继续砸. CURD操作类负责将用户提供的条件转换为SQL语句,并提供给IHelper执行, ...

  6. EF 的 CURD 操作

    EF 的 CURD 操作 这里采用了数据库 Northwind,下载地址:https://northwinddatabase.codeplex.com/ 增 /// <summary> / ...

  7. ASP.NET Core MVC+Layui使用EF Core连接MySQL执行简单的CRUD操作

    前言: 本章主要通过一个完整的示例讲解ASP.NET Core MVC+EF Core对MySQL数据库进行简单的CRUD操作,希望能够为刚入门.NET Core的小伙伴们提供一个完整的参考实例.关于 ...

  8. SmartSql使用教程(1)——初探,建立一个简单的CURD接口服务

    一.引言 最近SmartSql被正式引入到了NCC,借着这个契机写一个使用教程系列 二.SmartSql简介[摘自官方文档] 1. SmartSql是什么? SmartSql = MyBatis + ...

  9. Laravel框架数据库CURD操作、连贯操作使用方法

    Laravel框架数据库CURD操作.连贯如何来操作了这个操作性是非常的方便简单了我们在这里来为各位介绍一篇相关的教程,具体的细节步骤如下文介绍.   Laravel是一套简洁.优雅的PHP Web开 ...

随机推荐

  1. [Web Service] Tutorial Basic Concepts

    WSDL是网络服务描述语言,是一个包含关于web service信息(如方法名,方法参数)以及如何访问它. WSDL是UDDI的一部分. 作为web service 应用程序之间的接口,发音为wiz- ...

  2. 方程的解_NOI导刊2010提高

    方程的解 给定x,求\(a_1+a_2+...+a_k=x^x\ mod\ 1000\)的正整数解解的组数,对于100%的数据,k≤100,x≤2^31-1. 解 显然x是可以快速幂得到答案的,而该问 ...

  3. 搭建Python自动化测试环境+元素定位

    https://blog.csdn.net/GitChat/article/details/79081187

  4. 【转载】Jmeter 性能测试入门

    [转载]Jmeter性能测试 入门 Jmeter是一款优秀的开源测试工具, 是每个资深测试工程师,必须掌握的测试工具,熟练使用Jmeter能大大提高工作效率. 熟练使用Jmeter后, 能用Jmete ...

  5. Vue 组件异步加载(懒加载)

    一.vue的编译模式 (1)路由配置信息 //eg1: const MSite = resolve => require.ensure([], () =>resolve(require([ ...

  6. vue引用ionic4

    现在的Ionic4已经开始支持VUE和REACT了.个人之前开发用IONIC.现在用VUE开发还是想用IONIC.刚好 也是支持VUE了. 在vue的项目里安装ionic依赖 npm install ...

  7. 关于分布式版本控制系统Git与集中式版本控制系统SVN的区别

    我觉得最最主要的区别就是:分布式Git主要是在本地有各个历史版本,在不联网的时候,也可以更新到最新版本和查看过去的版本,而集中式SVN是所有人都将版本上传到中央服务器,当出现断网情况的时候,用户只有一 ...

  8. 初识ldap

    什么是LDAP? LDAP的英文全称是Lightweight Directory Access Protocol,一般都简称为LDAP.它是基于X.500标准的, 但是简单多了并且可以根据需要定制.与 ...

  9. javascript高级程序设计第3版——第1Java章 DOM扩展

    虽然DOM 为与XML 及HTML 文档交互制定了一系列核心API,但仍然有几个规范对标准的DOM进行了扩展.这些扩展中有很多原来是浏览器专有的,但后来成为了事实标准,于是其他浏览器也都提供了相同的实 ...

  10. vue-lazyload懒加载插件的使用

    vue-lazyload懒加载插件的使用其实很简单,不想vue-loader官网用法写的那么简单.下面代码演示: 1.安装插件 npm install vue-lazyload   --save 2. ...