zoukankan      html  css  js  c++  java
  • EF快速开发定义数据接口类

    • using System;
    • using System.Linq;
    • using System.Linq.Expressions;
    • using System.Data.Objects;
    • namespace HENANLUHENG.Framework.EntityRepository
    • {
    •     public interface IRepository<T> where T : class, new()
    •     {
    •         /// <summary>
    •         /// 返回一个 System.Linq.IQueryable
    •         /// </summary>
    •         /// <returns>一个 System.Linq.IQueryable,包含满足由 predicate 指定的条件的元素</returns>
    •         IQueryable<T> All();
    •         /// <summary>
    •         /// 返回一个 System.Linq.IQueryable,包含满足由 predicate 指定的条件的元素
    •         /// </summary>
    •         /// <param name="predicate">用于测试每个元素是否满足条件的函数</param>
    •         /// <returns>一个 System.Linq.IQueryable,包含满足由 predicate 指定的条件的元素</returns>
    •         IQueryable<T> Where(Expression<Func<T, bool>> predicate);
    •         /// <summary>
    •         /// 返回一个 System.Linq.IQueryable,包含满足由 predicate 和 分页参数 指定的条件的元素,并根据键对其元素排序
    •         /// </summary>
    •         /// <param name="predicate">用于测试每个元素是否满足条件的函数</param>
    •         /// <param name="pageSize">页大小</param>
    •         /// <param name="pageIndex">页码</param>
    •         /// <param name="orderingWhereor">用于从元素中提取键的函数</param>
    •         /// <param name="orderBy">排序类型</param>
    •         /// <param name="recCount">总数量</param>
    •         /// <returns>一个 System.Linq.IQueryable,包含满足由 predicate 和 分页参数 指定的条件的元素,并根据键对其元素排序</returns>
    •         IQueryable<T> Where<TKey>(Expression<Func<T, bool>> predicate, int pageSize, int pageIndex, Expression<Func<T, TKey>> orderingWhereor, OrderingOrders orderBy, out int recCount);
    •         /// <summary>
    •         /// 返回一个 System.Linq.IQueryable,包含满足由 predicate 指定的条件的元素,并根据键对其元素排序
    •         /// </summary>
    •         /// <param name="predicate">用于测试每个元素是否满足条件的函数</param>
    •         /// <param name="orderingWhereor">用于从元素中提取键的函数</param>
    •         /// <param name="orderBy">排序</param>
    •         /// <returns>一个 System.Linq.IQueryable,包含满足由 predicate 指定的条件的元素,并根据键对其元素排序</returns>
    •         IQueryable<T> Where<TKey>(Expression<Func<T, bool>> predicate, Expression<Func<T, TKey>> orderingWhereor, OrderingOrders orderBy);
    •         /// <summary>
    •         /// 返回一个 System.Linq.IQueryable,包含满足指定的条件的元素,并根据键对其元素排序
    •         /// </summary>
    •         /// <param name="conditions">条件T-Sql语句</param>
    •         /// <param name="objParams">参数</param>
    •         /// <returns>一个 System.Linq.IQueryable,包含满足指定的条件的元素,并根据键对其元素排序</returns>
    •         IQueryable<T> Where(string conditions, ObjectParameter[] objParams = null);
    •         /// <summary>
    •         /// 返回一个 System.Linq.IQueryable,包含满足指定的条件的元素,并根据键对其元素排序
    •         /// </summary>
    •         /// <param name="conditions">条件T-Sql语句</param>
    •         /// <param name="pageSize">页大小</param>
    •         /// <param name="pageIndex">页码</param>
    •         /// <param name="orderByStr">排序T-Sql语句</param>
    •         /// <param name="recCount">总数量</param>
    •         /// <param name="objParams">参数</param>
    •         /// <returns>一个 System.Linq.IQueryable,包含满足指定的条件的元素,并根据键对其元素排序</returns>
    •         IQueryable<T> Where(string conditions, int pageSize, int pageIndex, string orderByStr, out int recCount, ObjectParameter[] objParams = null);
    •         /// <summary>
    •         /// 返回序列的唯一元素;如果该序列并非恰好包含一个元素,则会引发异常。
    •         /// </summary>
    •         /// <param name="predicate">用于测试每个元素是否满足条件的函数</param>
    •         /// <returns>单个元素</returns>
    •         T Single(Expression<Func<T, bool>> predicate);
    •         /// <summary>
    •         /// 返回序列的唯一元素;如果该序列并非恰好包含一个元素,则会引发异常。
    •         /// </summary>
    •         /// <param name="predicate">用于测试每个元素是否满足条件的函数</param>
    •         /// <param name="orderingWhereor">用于从元素中提取键的函数</param>
    •         /// <param name="orderBy">排序</param>
    •         /// <returns>单个元素</returns>
    •         T Single<TKey>(Expression<Func<T, bool>> predicate, Expression<Func<T, TKey>> orderingWhereor, OrderingOrders orderBy);
    •         /// <summary>
    •         /// 返回序列中满足指定条件的唯一元素;如果序列中不包含任何元素,则返回默认值
    •         /// </summary>
    •         /// <param name="predicate">用于测试每个元素是否满足条件的函数</param>
    •         /// <returns>唯一元素</returns>
    •         T FirstOrDefault(Expression<Func<T, bool>> predicate);
    •         /// <summary>
    •         /// 返回序列中满足指定条件的唯一元素;如果序列中不包含任何元素,则返回默认值
    •         /// </summary>
    •         /// <param name="predicate">用于测试每个元素是否满足条件的函数</param>
    •         /// <param name="orderingWhereor">用于从元素中提取键的函数</param>
    •         /// <param name="orderBy">排序</param>
    •         /// <returns>唯一元素</returns>
    •         T FirstOrDefault<TKey>(Expression<Func<T, bool>> predicate, Expression<Func<T, TKey>> orderingWhereor, OrderingOrders orderBy);
    •         /// <summary>
    •         /// 返回指定序列中满足条件的元素数量
    •         /// </summary>
    •         /// <param name="predicate">用于测试每个元素是否满足条件的函数</param>
    •         /// <returns>元素数量</returns>
    •         int Count(Expression<Func<T, bool>> predicate);
    •         /// <summary>
    •         /// 将对象添加到当前实体集中的对象上下文
    •         /// </summary>
    •         /// <param name="entity">实体对象</param>
    •         /// <returns>操作是否成功</returns>
    •         bool Add(T entity);
    •         /// <summary>
    •         /// 将对象标记为待删除
    •         /// </summary>
    •         /// <param name="entity">实体对象</param>
    •         /// <returns>操作是否成功</returns>
    •         bool Delete(T entity);
    •         /// <summary>
    •         /// 将满足 指定的条件的元素对象标记为待删除;如果 IsOwnContex == true,将对象保存到数据源
    •         /// </summary>
    •         /// <param name="conditions">条件T-Sql语句</param>
    •         /// <returns>操作是否成功</returns>
    •         bool Delete(string conditions);
    •         /// <summary>
    •         /// 将满足 predicate 指定的条件的元素对象标记为待删除
    •         /// </summary>
    •         /// <param name="predicate">用于测试每个元素是否满足条件的函数</param>
    •         /// <returns>操作是否成功</returns>
    •         bool Delete(Expression<Func<T, bool>> predicate);
    •         /// <summary>
    •         ///     临时把实休对象保存在管理对象中
    •         /// </summary>
    •         /// <param name="entity"></param>
    •         void AddEntity(T entity);
    •     }
    • }
  • 相关阅读:
    【Idea】使用中的一些问题
    【Redis】Linux配置Redis(单点)
    【Zookeeper】Linux上安装zookeeper(单节点)
    【Echarts】设置主题、扇形格式化
    【JS】两个数组的交集、差集、并集、补集、去重
    【MySQL】 准确查询空值、ISNULL函数
    【健康】能量系统与训练应用和心肺耐力与运动表现
    【RabbitMQ】消息队列RabbitMQ与Spring集成
    【Java、Util】元和分的相互转换
    k8s入门系列之介绍篇
  • 原文地址:https://www.cnblogs.com/henanluheng/p/3523896.html
Copyright © 2011-2022 走看看