entityframework + Linq 分页
来源:互联网 发布:运行指数平滑算法 编辑:程序博客网 时间:2024/06/08 12:50
使用EF方便了我们操作数据库,使用Linq和lamda表达式,方便了我们对数据的操做.以及集合,数组等数据结构的操作.Linq其实是.net3.5之后新加如的语法,其本质还是会被翻译为sql语句来执行的.而lamada表达式其本质就是泛型委托的和扩展方法以及类型推断等多种特性共同作用的结果.
下边来看一些常用的数据集合的操作:
1,登陆操作,纯粹的Linq
ERPEntities entity = new ERPEntities(); String userName = String.Empty; String password = PublicUtil.Encrypt(model.Password); IEnumerable<ERPUser> users = (from u in entity.ERPUser where u.TrueName == model.UserName && u.UserPwd == password select u); if (users != null && users.Count() > 0) userName = users.First().TrueName; if (String.IsNullOrEmpty(userName)) { ModelState.AddModelError("UserName", "用户名不存在"); }
2,下边是一个根据用户较色查找权限的,纯粹的lamda表达式以及lamda表达式和linq的混写.
ERPEntities entity = new ERPEntities(); var qx = entity.ERPJiaoSe.Where(p => entity.ERPUser.Where(u => u.TrueName == userName).Select(u => u.JiaoSe).FirstOrDefault().Contains(p.JiaoSeName) && 2 == 2).Select(Q => new { Q.QuanXian, Q.ID }); IEnumerable<String> quanxian = from c in entity.ERPJiaoSe where (from u in entity.ERPUser where u.TrueName == userName select u.JiaoSe).FirstOrDefault().Contains(c.JiaoSeName) select c.QuanXian;
3,下边是一个分页,
int pageIndex = 0; int pageSize = 10; ERPEntities entity = new ERPEntities(); var list = (from kq in entity.ERPWorkRiZhi orderby kq.TimeStr descending select kq).Skip(pageIndex*pageSize).Take(pageSize);
linq和lamda表达式操作集合数据非常方便,.net里边包含的扩展的泛型方法能操纵很多用户自定义的数据类型.
- entityframework + Linq 分页
- Linq分页
- Linq 分页
- linq 分页
- Linq分页
- Linq Max函数与EntityFramework问题
- EntityFramework Linq 按年月统计查询
- EntityFrameWork使用MySql数据库分页误解区
- EntityFrameWork
- c# Linq 的分页
- LINQ+AspNetPager分页
- Linq to sql 分页
- Linq 分页查询数据
- 用Linq实现分页
- Linq的分页
- linq查询并分页
- Linq to sql 分页
- LINQ-分页数据查询
- 一切尽在不言中
- sqlserver 生成拼音码函数
- 即刻出发,期待逆袭
- 我是做好准备的战士
- 我战地日记的第一贴,占地方
- entityframework + Linq 分页
- 程序员有感
- 幸福 平凡---平淡
- 川流不息,勤奋不止
- 自定义UIBarButtonItem
- 病中反思——這幾個月以來的痛与樂
- 知识总结——JAVA面向对象
- 在你面前,两手空空
- 失去了翅膀,却依然坚信只要拼搏就可以飞翔