//新增
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的更多相关文章

  1. 利用EF ORM Mysql实体运行程序出错解决方案

    程序环境:VS2013 + mysql (server 5.7 + connector net 6.9.9 + for visual studio 1.2.6) + entity framework ...

  2. 关于EF ORM 框架的使用问题

    1.无法更新 EntitySet“System_UserInfo20140218001”,因为它有一个 DefiningQuery,而 <ModificationFunctionMapping& ...

  3. 大叔 EF 来分析 EntityFrameworks.Data.Core 2

    Extensions 1DbCommand拦截器扩展DbCommandInterceptorExtensions 2Class for IQuerable extensions methods Inc ...

  4. Module Zero之Nuget包

    返回<Module Zero学习目录> ABP module-zero已经发布在了nuget上了.这里是所有的包列表. Abp.Zero module zero的核心包. Abp.Zero ...

  5. 如何提高码农产量,基于ASP.NET MVC的敏捷开发框架开发随笔一

    公司业务量比较大,接了很多项目,为了缩短开发周期老板让我牵头搭建了一个敏捷开发框架. 我们主要的业务是做OA.CRM.ERP一类的管理系统,一个通用的后台搭出来,再配合一些快速开发的组件开发效率能提高 ...

  6. 构建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. ...

  7. 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(1)-前言与目录(持续更新中...)

    转自:http://www.cnblogs.com/ymnets/p/3424309.html 曾几何时我想写一个系列的文章,但是由于工作很忙,一直没有时间更新博客.博客园园龄都1年了,却一直都是空空 ...

  8. MVC3+EF4.1学习系列(三)-----排序 刷选 以及分页

    上篇文章 已经做出了基本的增删改查    但这远远不足以应付实际的项目  今天讲下实际项目中 肯定会有的 排序 刷选  以及分页. 重点想多写点分页的 毕竟这个是任何时候都要有的 而且 我会尽量把这个 ...

  9. MySql单表最大8000W+ 之数据库遇瓶颈记

    前言 昨晚救火到两三点,早上七点多醒来,朦胧中醒来发现电脑还开着,赶紧爬起来看昨晚执行的SQL命令结果.由于昨晚升级了阿里云的RDS,等了将近两个小时 还在 升降级中,早上阿里云那边回复升级过程中出现 ...

随机推荐

  1. 如何随机排序数组?使用多种方式!递归,迭代,洗牌,sort方法!

    方式1: 使用sort 方法 ---- // 方法1 使用sort 方法 var arr = [1,2,3,4,5,6,7,8]; function foo(arr) { var cloneArr = ...

  2. vue-cli中webpack配置详解

    vue-cli是构建vue单页应用的脚手架,命令行输入vue init <template-name> <project-name>从而自动生成的项目模板,比较常用的模板有we ...

  3. BBS论坛(十三)

    13.1点击更换图形验证码 (1)front/signup.html <div class="form-group"> <div class="inpu ...

  4. java多线程(6)---ThreadLocal

    ThreadLocal 什么是ThreadLocal? 顾名思义它是local variable(线程局部变量).它的功用非常简单,就是为每一个使用该变量的线程都提供一个变量值的副本,是每一个线程都可 ...

  5. Zabbix系列之七——添加磁盘IO监测

    zabbix给我们提供了一些较常用的监控模板,但现在我们如果想要监控我们磁盘的IO,这时候zabbix并没有给我们提供这么一个模板,所以我们需要自己来创建一个模板来完成磁盘IO的监控. 1. [roo ...

  6. Java 多线程(三)—— 线程的生命周期及方法

    这篇博客介绍线程的生命周期. 线程是一个动态执行的过程,它也有从创建到死亡的过程. 线程的几种状态 在 Thread 类中,有一个枚举内部类: 上面的信息以图片表示如下: 第一张图: 第二张图:把等待 ...

  7. redis 系列20 服务器上

    一.客户端与服务端交互 本篇简单介绍下服务器,服务器运行涉及的内部原理知识很多,主要了解Redis服务器内部要做哪些事情,需要开发人员去干预的比较少.Redis服务器负责与多个客户端建立网络连接,处理 ...

  8. git - 管理项目(SourceTree的使用)

    Git 相关命令操作全 1.SourceTree 是什么? SourceTree 是 Windows 和Mac OS X 下免费的 Git 和 Hg 客户端,拥有可视化界面,容易上手操作.同时它也是M ...

  9. What can university bring to you?

    前言 大学真的是一个神奇的地方,它能带给你的东西超乎你的想象. 当我刚进大学的时候,觉得它和初中,高中,没什么不同,就只是换了地方而已,但是当我现在从里面出来之后,才真的发现,我已经真的不是当年那个自 ...

  10. REST API设计指导——译自Microsoft REST API Guidelines(二)

    由于文章内容较长,只能拆开发布.翻译的不对之处,请多多指教. 另外:最近团队在做一些技术何架构的研究,视频教程只能争取周末多录制一点,同时预计在下周我们会展开一次直播活动,内容围绕容器技术这块. 所有 ...