博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
学习笔记39_EF的DAL层(精)
阅读量:5227 次
发布时间:2019-06-14

本文共 1258 字,大约阅读时间需要 4 分钟。

通用的分页查询

public IQueryable<UserInfo> GetPage<T>(int pageSize,int pageIndex,out int total,

Expression<Func<UserInfo,bool>> whereLambda,

Expression<Func<UserInfo,T>> orderByLambda, bool IsAsc)

{

  total = db.UserInfo.where(whereLambda).count();

  var temp = dbContext.UserInfo.where(whereLambda). //u=>u.Name.contains("aaa")

  OrderByDesceding<UserInfo,T>(orderByLambda)//u=>u.Name

  .Skip(pageSize*(pageIndex-1))

  .Take(pageSize).AsQueryable();

}

//baseDal

public class BaseDal<T> where T: class,new()

{

  DataModelContainer db = new DataModelContainer();

  public IQueryable<T> GetEntities(Expression<Func<T,bool>> whereLambda)

  {

    return db.Set<T>().Where(whereLambda).AsQueryable();

  }

  //

  

  public IQueryable<T> GetPage<S>(int pageSize,int pageIndex,out int total,

  Expression<Func<T,bool>> whereLambda,

  Expression<Func<T,S>> orderByLambda, bool IsAsc)

  {

      total = db.Set<T>.where(whereLambda).count();

      var temp = dbContext.UserInfo.where(whereLambda). //u=>u.Name.contains("aaa")

      OrderByDesceding<T,S>(orderByLambda)//u=>u.Name

      .Skip(pageSize*(pageIndex-1))

      .Take(pageSize).AsQueryable();

  }

}

//那么,UserInfoDal

public class UserInfoDal:BaseDal<UserInfo>

{

  

}

转载于:https://www.cnblogs.com/pylblog/p/7096160.html

你可能感兴趣的文章
TCP发送源码学习(1)--tcp_sendmsg
查看>>
使用两个不同类型的数据进行加法计算时,使用异常处理语句捕获由于数据类型错误而出现的异常,发生生成错误。是否继续并运行上次的成功生成?...
查看>>
python-三级菜单和购物车程序
查看>>
sql操作
查看>>
条件断点 符号断点
查看>>
第二十三模板 18.3.5 位集合
查看>>
LEFT JOIN条件写在where里是不会多查出数据来的
查看>>
手把手 学习Git
查看>>
VMware12 + Ubuntu16.04 虚拟磁盘扩容
查看>>
pwershell switch 语句
查看>>
学习Spring Boot:(五)使用 devtools热部署
查看>>
三人行有我师?取长补短?影响力?
查看>>
设计模式——设计模式概述
查看>>
封装一个获取module.exports内容的方法
查看>>
动态连接库
查看>>
ServletContext 与application的异同
查看>>
水平垂直居中
查看>>
CSS3教程:border-image属性
查看>>
asp.netmvc常见功能链接
查看>>
sql server系统表详细说明
查看>>