EF ORM
//新增
UserInfo userInfo = new UserInfo();
userInfo.UserName = "YANG";
userInfo.UserPass = "";
userInfo.Email = "253@qq.com";
userInfo.RegTime = System.DateTime.Now; Model1Container db = new Model1Container();
db.UserInfoSet.Add(userInfo);
db.SaveChanges();
Response.Write(userInfo.Id);
//删除
UserInfo userInfo = new UserInfo() { Id = };
Model1Container db =new Model1Container();
// db.UserInfoSet.Remove(userInfo);//必须提前知道对象,不然报错,找不到对象
db.Entry<UserInfo>(userInfo).State = System.Data.Entity.EntityState.Deleted;
db.SaveChanges();
//查询
Model1Container db = new Model1Container();
var userInfoList = from u in db.UserInfoSet
where u.Id ==
select u;
foreach (var userInfor in userInfoList)
{
Response.Write(userInfor.UserName);
}
//修改
Model1Container db = new Model1Container();
var userInfoList = from u in db.UserInfoSet
where u.Id ==
select u;
var userInfo = userInfoList.FirstOrDefault();
userInfo.UserName = "成龙";
db.Entry<UserInfo>(userInfo).State = System.Data.Entity.EntityState.Modified;
db.SaveChanges();
//一对多 新增
Model2Container db = new Model2Container();
Customer customer = new Customer() { CustomerName = "张三", CustomerPwd = "", SubTime = DateTime.Now };
OrderInfo orderInfo1 = new OrderInfo() { id = Guid.NewGuid(), OrderNum = "", CreateDateTime = DateTime.Now, Customer = customer };
OrderInfo orderInfo2 = new OrderInfo() { id = Guid.NewGuid(), OrderNum = "", CreateDateTime = DateTime.Now, Customer = customer };
OrderInfo orderInfo3 = new OrderInfo() { id = Guid.NewGuid(), OrderNum = "", CreateDateTime = DateTime.Now, Customer = customer };
db.CustomerSet.Add(customer);
db.OrderInfoSet.Add(orderInfo1);
db.OrderInfoSet.Add(orderInfo2);
db.OrderInfoSet.Add(orderInfo3);
db.SaveChanges();
.// 查询部分列
Model1Container db =new Model1Container();
var userInfoList = from u in db.UserInfoSet
where u.Id ==
select new { userName = u.UserName, userPwd = u.UserPass };
foreach (var userInfo in userInfoList)
{
Response.Write(userInfo.userName + ":" + userInfo.userPwd);
}
//lamda表达式
Model1Container db = new Model1Container();
var userInfoList = db.UserInfoSet.Where<UserInfo>(u => u.Id > ).OrderBy<UserInfo, int>(u=>u.Id);
foreach (var userInfo in userInfoList)
{
Response.Write(userInfo.UserName + ":" + userInfo.UserPass);
}
// 分页
//Model1Container db = new Model1Container();
//为了解决访问过程中出现多个EF连接,利用HttpContext对象的线程唯一对象属性,判断db访问对象是否存在
Model1Container db = null;
if (HttpContext.Current.Items["db"] == null)
{
db = new Model1Container();
HttpContext.Current.Items["db"] = db;
}
else
{
db = HttpContext.Current.Items["db"] as Model1Container;
}
int pageSize = ;
int pageIndex = ;
var userInfoList = db.UserInfoSet.Where<UserInfo>(u => true).OrderByDescending<UserInfo, int>(u => u.Id).Skip<UserInfo>((pageIndex-)*pageSize).Take<UserInfo>(pageSize); //如果转换为List,就无延迟加载
foreach (var userInfo in userInfoList)
{
Response.Write(userInfo.UserName + ":" + userInfo.UserPass+"<br/>");
} var userInfoList = db.UserInfoSet.Where<UserInfo>(u => u.Id > );//有延迟加载
var userInfoList1 = db.UserInfoSet.Where<UserInfo>(u => u.Id > ).ToList();//无延迟加载,直接将数据加载到内存中
EF ORM的更多相关文章
- 利用EF ORM Mysql实体运行程序出错解决方案
程序环境:VS2013 + mysql (server 5.7 + connector net 6.9.9 + for visual studio 1.2.6) + entity framework ...
- 关于EF ORM 框架的使用问题
1.无法更新 EntitySet“System_UserInfo20140218001”,因为它有一个 DefiningQuery,而 <ModificationFunctionMapping& ...
- 大叔 EF 来分析 EntityFrameworks.Data.Core 2
Extensions 1DbCommand拦截器扩展DbCommandInterceptorExtensions 2Class for IQuerable extensions methods Inc ...
- Module Zero之Nuget包
返回<Module Zero学习目录> ABP module-zero已经发布在了nuget上了.这里是所有的包列表. Abp.Zero module zero的核心包. Abp.Zero ...
- 如何提高码农产量,基于ASP.NET MVC的敏捷开发框架开发随笔一
公司业务量比较大,接了很多项目,为了缩短开发周期老板让我牵头搭建了一个敏捷开发框架. 我们主要的业务是做OA.CRM.ERP一类的管理系统,一个通用的后台搭出来,再配合一些快速开发的组件开发效率能提高 ...
- 构建ASP.NET MVC5+EF6+EasyUI 1.4.3+Unity4.x注入的后台管理系统
开篇:从50开始系统已经由MVC4+EF5+UNITY2.X+Quartz 2.0+easyui 1.3.4无缝接入 MVC5+EF6+Unity4.x+Quartz 2.3 +easyui 1.4. ...
- 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(1)-前言与目录(持续更新中...)
转自:http://www.cnblogs.com/ymnets/p/3424309.html 曾几何时我想写一个系列的文章,但是由于工作很忙,一直没有时间更新博客.博客园园龄都1年了,却一直都是空空 ...
- MVC3+EF4.1学习系列(三)-----排序 刷选 以及分页
上篇文章 已经做出了基本的增删改查 但这远远不足以应付实际的项目 今天讲下实际项目中 肯定会有的 排序 刷选 以及分页. 重点想多写点分页的 毕竟这个是任何时候都要有的 而且 我会尽量把这个 ...
- MySql单表最大8000W+ 之数据库遇瓶颈记
前言 昨晚救火到两三点,早上七点多醒来,朦胧中醒来发现电脑还开着,赶紧爬起来看昨晚执行的SQL命令结果.由于昨晚升级了阿里云的RDS,等了将近两个小时 还在 升降级中,早上阿里云那边回复升级过程中出现 ...
随机推荐
- [Swift]LeetCode1001. 网格照明 | Grid Illumination
On a N x N grid of cells, each cell (x, y) with 0 <= x < N and 0 <= y < N has a lamp. In ...
- Feign源码解析系列-核心初始化
开始 初始化Feign客户端当然是整个过程中的核心部分,毕竟初始化完毕就等着调用了,初始化时候准备的什么,流程就走什么. 内容 从上一篇中,我们已经知道,对于扫描到的每一个有@FeignClient, ...
- vue中央事件总线eventBus的简单理解和使用
公共事件总线eventBus的实质就是创建一个vue实例,通过一个空的vue实例作为桥梁实现vue组件间的通信.它是实现非父子组件通信的一种解决方案. 用法如下: 第一步:项目中创建一个js文件(我通 ...
- Spring Boot 集成 Hystrix
续: <Hystrix介绍> <Hystrix是如何工作的> <SpringCloud学习笔记(3)——Hystrix> Hystrix使用 package com ...
- 使用Autofac动态注入启动Api服务
Autofac Autofac(https://autofac.org/)是一款.NET的IOC组件,它可以和Owin, Web Api, ASP.NET MVC, .NET Core完美结合,帮助开 ...
- redis 系列14 有序集合对象
一. 有序集合概述 Redis 有序集合对象和集合对象一样也是string类型元素的集合,且不允许重复的成员.不同的是每个元素都会关联一个double类型的分数.redis正是通过分数来为集合中的成员 ...
- JVM(1)---虚拟机在运行期的优化策略
1.解释器与JIT编译器 首先我们先来了解一下运行在虚拟机之上的解释器与JIT编译器.当我们的虚拟机在运行一个java程序的时候,它可以采用两种方式来运行这个java程序: 采用解释器的形式,也就是说 ...
- 基于spark实现并行化Apriori算法
详细代码我已上传到github:click me 一. 实验要求 在 Spark2.3 平台上实现 Apriori 频繁项集挖掘的并行化算法.要求程序利用 Spark 进行并行计算. ...
- webpack无法热加载(__webpack_hmr 502)
最近本地开发项目代码一直无法热加载,于是就抽空想办法解决 我们线上的地址是:https://aitest.ichuanyi.com/ai-admin/#/ 其实ai-admin是线上的一个目录 所以 ...
- 如何用sysbench做好IO性能测试
sysbench 是一个非常经典的综合性能测试工具,通常都用它来做数据库的性能压测,但也可以用来做CPU,IO的性能测试.而对于IO测试,不是很推荐sysbench,倒不是说它有错误,工具本身没有任何 ...