123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264 |
- using Lottomat.Util.WebControl;
- using System;
- using System.Collections.Generic;
- using System.Data;
- using System.Data.Common;
- using System.Linq;
- using System.Linq.Expressions;
- namespace Lottomat.Data.Repository
- {
- /// <summary>
- /// 版 本 1.0
- /// Copyright (c) 2016-2017
- /// 创建人:赵轶
- /// 日 期:2015.10.10
- /// 描 述:定义仓储模型中的数据标准操作接口
- /// </summary>
- public interface IRepository
- {
- /// <summary>
- /// 开始事务
- /// </summary>
- /// <returns></returns>
- IRepository BeginTrans();
- /// <summary>
- /// 提交
- /// </summary>
- void Commit();
- /// <summary>
- /// 回滚
- /// </summary>
- void Rollback();
- /// <summary>
- /// 执行T-SQL
- /// </summary>
- /// <param name="strSql">sql语句</param>
- /// <returns></returns>
- int ExecuteBySql(string strSql);
- /// <summary>
- /// 执行T-SQL
- /// </summary>
- /// <param name="strSql">sql语句</param>
- /// <param name="dbParameter">DbCommand参数</param>
- /// <returns></returns>
- int ExecuteBySql(string strSql, params DbParameter[] dbParameter);
- /// <summary>
- /// 执行存储过程
- /// </summary>
- /// <param name="procName">存储过程名称</param>
- /// <returns></returns>
- int ExecuteByProc(string procName);
- /// <summary>
- /// 执行存储过程
- /// </summary>
- /// <param name="procName">存储过程名称</param>
- /// <param name="dbParameter">DbCommand参数</param>
- /// <returns></returns>
- int ExecuteByProc(string procName, params DbParameter[] dbParameter);
- /// <summary>
- /// 插入一条数据
- /// </summary>
- /// <param name="entity">对象实体</param>
- /// <returns></returns>
- int Insert<T>(T entity) where T : class;
- /// <summary>
- /// 批量插入数据
- /// </summary>
- /// <param name="entity">对象实体集合</param>
- /// <returns></returns>
- int Insert<T>(List<T> entity) where T : class;
-
- /// <summary>
- /// 删除
- /// </summary>
- /// <returns></returns>
- int Delete<T>() where T : class;
- /// <summary>
- /// 删除一条数据
- /// </summary>
- /// <param name="entity">对象实体</param>
- /// <returns></returns>
- int Delete<T>(T entity) where T : class;
- /// <summary>
- /// 批量删除
- /// </summary>
- /// <param name="entity">对象实体集合</param>
- /// <returns></returns>
- int Delete<T>(List<T> entity) where T : class;
- /// <summary>
- /// 根据条件删除数据
- /// </summary>
- /// <param name="condition">条件</param>
- /// <returns></returns>
- int Delete<T>(Expression<Func<T, bool>> condition) where T : class, new();
- /// <summary>
- /// 根据主键删除一条数据
- /// </summary>
- /// <param name="keyValue">主键</param>
- /// <returns></returns>
- int Delete<T>(object keyValue) where T : class;
- /// <summary>
- /// 根据主键批量删除一条数据
- /// </summary>
- /// <param name="keyValue">主键数组</param>
- /// <returns></returns>
- int Delete<T>(object[] keyValue) where T : class;
- /// <summary>
- /// 根据属性删除
- /// </summary>
- /// <param name="propertyValue">属性值</param>
- /// <param name="propertyName">属性名</param>
- /// <returns></returns>
- int Delete<T>(object propertyValue, string propertyName) where T : class;
- /// <summary>
- /// 更新一条数据
- /// </summary>
- /// <param name="entity">实体对象</param>
- /// <returns></returns>
- int Update<T>(T entity) where T : class;
- /// <summary>
- /// 批量更新
- /// </summary>
- /// <param name="entity">实体对象集合</param>
- /// <returns></returns>
- int Update<T>(List<T> entity) where T : class;
- /// <summary>
- /// 根据条件更新
- /// </summary>
- /// <param name="condition">条件</param>
- /// <returns></returns>
- int Update<T>(Expression<Func<T, bool>> condition) where T : class, new();
- /// <summary>
- /// 根据主键获取一条数据
- /// </summary>
- /// <param name="keyValue">主键值</param>
- /// <returns></returns>
- T FindEntity<T>(object keyValue) where T : class;
- /// <summary>
- /// 根据条件获取一条数据
- /// </summary>
- /// <param name="condition"></param>
- /// <returns></returns>
- T FindEntity<T>(Expression<Func<T, bool>> condition) where T : class, new();
- /// <summary>
- /// 获取IQueryable对象
- /// </summary>
- /// <returns></returns>
- IQueryable<T> IQueryable<T>() where T : class, new();
- /// <summary>
- /// 根据条件获取IQueryable对象
- /// </summary>
- /// <param name="condition"></param>
- /// <returns></returns>
- IQueryable<T> IQueryable<T>(Expression<Func<T, bool>> condition) where T : class, new();
- /// <summary>
- /// 根据T-SQL语句获取一条数据,返回对象集合
- /// </summary>
- /// <param name="strSql">T-SQL语句</param>
- /// <returns></returns>
- IEnumerable<T> FindList<T>(string strSql) where T : class;
- /// <summary>
- /// 根据T-SQL语句获取一条数据,返回对象集合
- /// </summary>
- /// <param name="strSql">T-SQL语句</param>
- /// <param name="dbParameter">DbCommand参数</param>
- /// <returns></returns>
- IEnumerable<T> FindList<T>(string strSql, DbParameter[] dbParameter) where T : class;
- /// <summary>
- /// 根据分页参数获取一条数据,返回对象集合
- /// </summary>
- /// <param name="pagination">分页参数</param>
- /// <returns></returns>
- IEnumerable<T> FindList<T>(Pagination pagination) where T : class, new();
- /// <summary>
- /// 根据分页参数、条件获取一条数据,返回对象集合
- /// </summary>
- /// <param name="condition">条件</param>
- /// <param name="pagination">分页参数</param>
- /// <returns></returns>
- IEnumerable<T> FindList<T>(Expression<Func<T, bool>> condition, Pagination pagination) where T : class, new();
- /// <summary>
- /// 根据条件获取一条数据,返回对象集合
- /// </summary>
- /// <param name="condition">条件</param>
- /// <returns></returns>
- IEnumerable<T> FindList<T>(Expression<Func<T, bool>> condition) where T : class, new();
- /// <summary>
- /// 根据分页参数获取一条数据,返回对象集合
- /// </summary>
- /// <param name="strSql">T-SQL语句</param>
- /// <param name="pagination">分页参数</param>
- /// <returns></returns>
- IEnumerable<T> FindList<T>(string strSql, Pagination pagination) where T : class;
- /// <summary>
- /// 根据分页参数获取一条数据,返回对象集合
- /// </summary>
- /// <param name="strSql">T-SQL语句</param>
- /// <param name="dbParameter">DbCommand参数</param>
- /// <param name="pagination">分页参数</param>
- /// <returns></returns>
- IEnumerable<T> FindList<T>(string strSql, DbParameter[] dbParameter, Pagination pagination) where T : class;
- /// <summary>
- /// 返回DataTable
- /// </summary>
- /// <param name="strSql">T-SQL语句</param>
- /// <returns></returns>
- DataTable FindTable(string strSql);
- /// <summary>
- /// 返回DataTable
- /// </summary>
- /// <param name="strSql">T-SQL语句</param>
- /// <param name="dbParameter">DbCommand参数</param>
- /// <returns></returns>
- DataTable FindTable(string strSql, DbParameter[] dbParameter);
- /// <summary>
- /// 返回DataTable
- /// </summary>
- /// <param name="strSql">T-SQL语句</param>
- /// <param name="pagination">分页参数</param>
- /// <returns></returns>
- DataTable FindTable(string strSql, Pagination pagination);
- /// <summary>
- /// 返回DataTable
- /// </summary>
- /// <param name="strSql">T-SQL语句</param>
- /// <param name="dbParameter">DbCommand参数</param>
- /// <param name="pagination">分页参数</param>
- /// <returns></returns>
- DataTable FindTable(string strSql, DbParameter[] dbParameter, Pagination pagination);
- /// <summary>
- /// 获取分页DataTable
- /// </summary>
- /// <param name="strSql">T-SQL语句</param>
- /// <param name="orderField">排序字段</param>
- /// <param name="isAsc">是否升序</param>
- /// <param name="pageSize">每页条数</param>
- /// <param name="pageIndex">索引</param>
- /// <param name="total">总记录</param>
- /// <returns></returns>
- DataTable FindTable(string strSql, string orderField, bool isAsc, int pageSize, int pageIndex, out int total);
- /// <summary>
- /// 返回Object
- /// </summary>
- /// <param name="strSql">T-SQL语句</param>
- /// <returns></returns>
- object FindObject(string strSql);
- /// <summary>
- /// 返回Object
- /// </summary>
- /// <param name="strSql">T-SQL语句</param>
- /// <param name="dbParameter">DbCommand参数</param>
- /// <returns></returns>
- object FindObject(string strSql, DbParameter[] dbParameter);
- }
- }
|