当前位置: 首页 > news >正文

滕州网站建设滕州做外贸网站平台

滕州网站建设滕州,做外贸网站平台,怀化网站建设公司,网站开发方案怎么写//----------------------------------------------------------------// Copyright (C) 2013 河南禄恒软件科技有限公司// // 功能描述#xff1a;实体框架数据仓储的操作接口#xff0c;包含增删改查接口////------------------------------------------------------------…//----------------------------------------------------------------// Copyright (C) 2013 河南禄恒软件科技有限公司// // 功能描述实体框架数据仓储的操作接口包含增删改查接口////----------------------------------------------------------------using System;using System.Data.Entity.Infrastructure;using System.Data.Objects;using System.Linq;using System.Linq.Expressions;using System.Data.Entity;using EntityFramework.Extensions;namespace Qmvc.DataAccess.EntityRepository{    /// summary    ///     实体框架数据仓储的基类    /// /summary    /// typeparam nameTContext提供用于查询和使用对象形式的实体数据的功能的实体上下文/typeparam    /// typeparam nameT表示用于执行创建、读取、更新和删除操作的类型化实体集/typeparam    public abstract class EntityRepositoryBaseTContext, T : IRepositoryT        where TContext : DbContext        where T : class, new()    {        /// summary        ///     表示用于执行创建、读取、更新和删除操作的类型化实体集        /// /summary        private DbSetT _dbSet;        /// summary        ///         /// /summary        protected EntityRepositoryBase()        {            IsOwnContext false;        }        /// summary        ///     提供用于查询和使用对象形式的实体数据的功能的实体上下文        /// /summary        protected virtual TContext Context { get; set; }        /// summary        ///     表示用于执行创建、读取、更新和删除操作的类型化实体集        /// /summary        protected virtual DbSetT Set        {            get { return _dbSet ?? (_dbSet Context.SetT()); }            set { _dbSet value; }        }        /// summary        ///     是否拥有上下文        /// /summary        protected bool IsOwnContext { get; set; }        /// summary        ///     返回一个 System.Linq.IQueryable        /// /summary        /// returns一个 System.Linq.IQueryable包含满足由 predicate 指定的条件的元素/returns        public virtual IQueryableT All()        {            return Set.Where(p true);        }        /// summary        ///     返回一个 System.Linq.IQueryable包含满足由 predicate 指定的条件的元素        /// /summary        /// param namepredicate用于测试每个元素是否满足条件的函数/param        /// returns一个 System.Linq.IQueryable包含满足由 predicate 指定的条件的元素/returns        public virtual IQueryableT Where(ExpressionFuncT, bool predicate)        {            var query Set.Where(predicate);            return query;        }        /// summary        ///     返回一个 System.Linq.IQueryableT包含满足由 predicate 和 分页参数 指定的条件的元素并根据键对其元素排序/T        /// /summary        /// param namepredicate用于测试每个元素是否满足条件的函数/param        /// param namepageSize页大小/param        /// param namepageIndex页码/param        /// param nameorderingSelector用于从元素中提取键的函数/param        /// param nameorderBy排序类型/param        /// param namerecCount总数量/param        /// returns一个 System.Linq.IQueryableT/包含满足由 predicate 和 分页参数 指定的条件的元素并根据键对其元素排序/returns        public virtual IQueryableT WhereTKey(ExpressionFuncT, bool predicate, int pageSize, int pageIndex,            ExpressionFuncT, TKey orderingSelector, OrderingOrders orderBy, out int recCount)        {            IQueryableT query Set.Where(predicate);            recCount query.Count();            query orderBy OrderingOrders.ASC                ? query.OrderBy(orderingSelector).AsQueryable()                : query.OrderByDescending(orderingSelector).AsQueryable();            query query.Skip((pageIndex - 1) * pageSize).Take(pageSize);            return query;        }        /// summary        ///     返回一个 System.Linq.IQueryableT/包含满足由 predicate 指定的条件的元素并根据键对其元素排序        /// /summary        /// param namepredicate用于测试每个元素是否满足条件的函数/param        /// param nameorderingSelector用于从元素中提取键的函数/param        /// param nameorderBy排序/param        /// returns一个 System.Linq.IQueryableT/包含满足由 predicate 指定的条件的元素并根据键对其元素排序/returns        public virtual IQueryableT WhereTKey(ExpressionFuncT, bool predicate,            ExpressionFuncT, TKey orderingSelector, OrderingOrders orderBy)        {            IQueryableT query Set.Where(predicate);            query orderBy OrderingOrders.ASC                ? query.OrderBy(orderingSelector).AsQueryable()                : query.OrderByDescending(orderingSelector).AsQueryable();            return query;        }        /// summary        /// 通过SQL查询数据结果        /// /summary        /// typeparam nameTKey/typeparam        /// param namesql/param        /// param nameparameters/param        /// returns/returns        public virtual IQueryableT WhereTKey(string sql, params object[] parameters)        {            IQueryableT query Set.SqlQuery(sql, parameters).AsQueryable();            return query;        }        /// summary        ///     返回序列的唯一元素如果该序列并非恰好包含一个元素则会引发异常。        /// /summary        /// param namepredicate用于测试每个元素是否满足条件的函数/param        /// returns单个元素/returns        public virtual T Single(ExpressionFuncT, bool predicate)        {            return Set.Single(predicate);        }        /// summary        ///     返回序列的唯一元素如果该序列并非恰好包含一个元素则会引发异常。        /// /summary        /// param namepredicate用于测试每个元素是否满足条件的函数/param        /// param nameorderingSelector用于从元素中提取键的函数/param        /// param nameorderBy排序/param        /// returns单个元素/returns        public virtual T SingleTKey(ExpressionFuncT, bool predicate, ExpressionFuncT, TKey orderingSelector,            OrderingOrders orderBy)        {            IQueryableT query Set.Where(predicate);            query orderBy OrderingOrders.ASC                ? query.OrderBy(orderingSelector).AsQueryable()                : query.OrderByDescending(orderingSelector).AsQueryable();            return query.Single();        }        /// summary        ///     返回序列中满足指定条件的唯一元素如果序列中不包含任何元素则返回默认值        /// /summary        /// param namepredicate用于测试每个元素是否满足条件的函数/param        /// returns唯一元素/returns        public virtual T FirstOrDefault(ExpressionFuncT, bool predicate)        {            return Set.FirstOrDefault(predicate);        }        /// summary        ///     返回序列中满足指定条件的唯一元素如果序列中不包含任何元素则返回默认值        /// /summary        /// param namepredicate用于测试每个元素是否满足条件的函数/param        /// param nameorderingSelector用于从元素中提取键的函数/param        /// param nameorderBy排序/param        /// returns唯一元素/returns        public virtual T FirstOrDefaultTKey(ExpressionFuncT, bool predicate,            ExpressionFuncT, TKey orderingSelector, OrderingOrders orderBy)        {            IQueryableT query Set.Where(predicate);            query orderBy OrderingOrders.ASC                ? query.OrderBy(orderingSelector).AsQueryable()                : query.OrderByDescending(orderingSelector).AsQueryable();            return query.FirstOrDefault();        }        /// summary        ///     返回指定序列中满足条件的元素数量        /// /summary        /// param namepredicate用于测试每个元素是否满足条件的函数/param        /// returns元素数量/returns        public virtual int Count(ExpressionFuncT, bool predicate)        {            return Set.Count(predicate);        }        /// summary        ///     将对象添加到当前实体集中的对象上下文如果 IsOwnContex true将对象保存到数据源        /// /summary        /// param nameentity实体对象/param        /// returns操作是否成功/returns        public virtual bool Add(T entity)        {            bool isSucceed;            Set.Add(entity);            if (IsOwnContext)                isSucceed Context.SaveChanges() 0;            else                isSucceed true;            return isSucceed;        }        /// summary        ///     将对象标记为待删除如果 IsOwnContex true将对象保存到数据源        /// /summary        /// param nameentity实体对象/param        /// returns操作是否成功/returns        public virtual bool Delete(T entity)        {            bool isSucceed;            Set.Remove(entity);            if (IsOwnContext)                isSucceed Context.SaveChanges() 0;            else                isSucceed true;            return isSucceed;        }        /// summary        ///     将满足 predicate 指定的条件的元素对象标记为待删除        /// /summary        /// param namepredicate用于测试每个元素是否满足条件的函数/param        /// returns操作是否成功/returns        public virtual bool Delete(ExpressionFuncT, bool predicate)        {            return Set.Where(predicate).Delete() 0;        }        /// summary        ///     将满足 predicate 指定的条件的元素对象更新为满足 updatePredicate 条件的属性        /// /summary        /// param namepredicate用于测试每个元素是否满足条件的函数/param        /// param nameupdatePredicate用于构建对象的函数/param        /// returns操作是否成功/returns        public virtual bool Update(ExpressionFuncT, bool predicate, ExpressionFuncT, T updatePredicate)        {            return Set.Update(predicate, updatePredicate) 0;        }        /// summary        ///         /// /summary        public void Dispose()        {            if ((IsOwnContext) (Context ! null))            {                Context.Dispose();            }            GC.SuppressFinalize(this);        }        /// summary        ///     临时把实休对象保存在管理对象中        /// /summary        /// param nameentity/param        public virtual void AddEntity(T entity)        {            Set.Add(entity);        }               /// summary        ///     将所有更新保存到数据源并重置对象上下文中的更改跟踪。        /// /summary        /// returns        ///     在调用 System.Data.Objects.ObjectContext.SaveChanges() 时处于        ///     System.Data.EntityState.Added、System.Data.EntityState.Modified或 System.Data.EntityState.Deleted 状态的对象数。        /// /returns        public int SaveChanges()        {            return Context.SaveChanges();        }    }}   转自http://www.cnblogs.com/henanluheng/p/3785596.html转载于:https://www.cnblogs.com/gdutzhulm/p/3785710.html
http://www.yutouwan.com/news/475434/

相关文章:

  • 网网站设计网东莞有哪些好企业
  • 武夷山市住房和城乡建设局网站wordpress post表
  • 免费网站模版 优帮云wordpress无法访问首页
  • 本人已履行网站备案信息苏州建站模板源码
  • 上海学网站建设行业数据分析网站
  • 做网站 客户一直要求改wordpress制作友情链接页面
  • wordpress foxpay嘉兴seo网站排名优化
  • 微博带动网站做排名c2c有哪些平台
  • 网站开发都有什么类别离石古楼角网站建设
  • 重庆网站建设哪个平台好软件拉新推广平台
  • 阜阳做网站多少钱上海网站推广找哪家
  • 网页制作中网站名称怎么做用自己的ip怎么查看dw8建设的网站
  • 我的网站百度怎么搜索不到陈列设计师培训
  • 做优化很好的网站中国互联网企业100强榜单
  • 专门做二手手机的网站吗做淘宝客如何建自己的网站
  • 在线商城网站开发代码海南网站建设报价方案
  • 建设网站协议网站有吗免费的
  • 企业网站的作用有哪些wordpress联动筛选模板
  • 山东网站建设制作公司网站建设需要什么技能
  • app网站多少钱一个完整的网站制作流程
  • 顶部固定网站模板阿里云带宽5m能做什么网站
  • 成都 视频网站建设WordPress数据库搬迁
  • 象屿做核放单的网站关键词优化如何做
  • 有网站做淘宝客2022最新热点时评十篇
  • 个人做考试类网站网站模板代码
  • 商业网站的创建程序办公室装修设计平面图
  • 扬州中兴建设有限公司网站头像设计制作网站
  • 通栏网站优化推广
  • 网络公司发生网站建设费分录免费注册google账号
  • 药品在哪些网站做推广国外的室内设计网站