Пример #1
0
        public T FirstOrDefault <T>(IWhereGetter where, IOrderByGetter orderByGetter = null) where T : class
        {
            var list = this.FindByProperties <T>(where, orderByGetter);

            if (ToolFactory.CreateIValidatorTool().IsEmpty(list))
            {
                return(null);
            }
            return(list[0]);
        }
Пример #2
0
        public TResult Count <TEntity, TResult>(string propertyName, IWhereGetter where = null) where TEntity : class
        {
            var iCriteria = this.Session.CreateCriteria <TEntity>();

            iCriteria.SetProjection(Projections.Count(propertyName));
            iCriteria = QueryParameterHelper.Add(iCriteria, where);
            var result = iCriteria.UniqueResult <TResult>();

            return(result);
        }
Пример #3
0
        public static ICriterion ToICriterion(IWhereGetter where)
        {
            ICriterion leftICriterion = null;
            var        enumerator     = where.Filter.Filters.GetEnumerator();

            while (enumerator.MoveNext())
            {
                leftICriterion = ConcatICriterionByFilters(leftICriterion, enumerator);
            }
            return(leftICriterion);
        }
Пример #4
0
        public IList <T> FindByProperties <T>(IWhereGetter where, IOrderByGetter orderByGetter = null) where T : class
        {
            var iCriteria = this.Session.CreateCriteria <T>();

            iCriteria = QueryParameterHelper.Add(iCriteria, where);

            iCriteria = QueryParameterHelper.AddOrder(iCriteria, orderByGetter);

            var list = iCriteria.List <T>();

            return(list);
        }
Пример #5
0
        public TDto FirstOrDefault(IWhereGetter where)
        {
            var entity = this.IBaseDao.FirstOrDefault <TDbEntity>(where);

            if (entity == null)
            {
                return(null);
            }
            var dto = MapToDto(entity);

            return(dto);
        }
Пример #6
0
        public static ICriteria Add(ICriteria iCriteria, IWhereGetter where)
        {
            if (where == null || where.Filter == null || where.Filter.Filters == null || where.Filter.Filters.Count == 0)
            {
                return(iCriteria);
            }
            ICriterion leftICriterion = null;

            leftICriterion = ToICriterion(where);
            if (leftICriterion != null)
            {
                iCriteria.Add(leftICriterion);
            }
            return(iCriteria);
        }
Пример #7
0
        public GenericPageResult <T> Page <T>(IOrderByGetter orderByGetter, IWhereGetter where, int pageIndex = 1, int pageSize = 10)
            where T : class
        {
            var iCriteria = this.Session.CreateCriteria <T>();

            pageIndex = pageIndex == 0 ? 1 : pageIndex;
            iCriteria = QueryParameterHelper.Add(iCriteria, where);
            var total = ICriteriaHelper.Count(iCriteria);

            iCriteria.SetMaxResults(pageSize);
            iCriteria.SetFirstResult(pageSize * (pageIndex - 1));
            iCriteria = QueryParameterHelper.AddOrder(iCriteria, orderByGetter.OrderBys);
            var list = iCriteria.List <T>();
            GenericPageResult <T> resultData = new GenericPageResult <T>()
            {
                Data      = list,
                PageIndex = pageIndex,
                PageSize  = pageSize,
                Total     = total
            };

            return(resultData);
        }
Пример #8
0
 public T FirstOrDefault(IWhereGetter where, IOrderByGetter iOrderByGetter = null)
 {
     return(this.DaoTemplate.FirstOrDefault <T>(where, iOrderByGetter));
 }
Пример #9
0
 public GenericPageResult <T> Page(IOrderByGetter orderBys, IWhereGetter where, int pageIndex = 1, int pageSize = 10)
 {
     return(this.DaoTemplate.Page <T>(orderBys, where, pageIndex, pageSize));
 }
Пример #10
0
 public IList <T> FindByProperties(IWhereGetter where, IOrderByGetter orderByGetter = null)
 {
     return(this.DaoTemplate.FindByProperties <T>(where, orderByGetter));
 }
Пример #11
0
 public IList <T> Top(int firstIndex, int maxSize, IOrderByGetter orderByGetter, IWhereGetter where = null)
 {
     return(this.DaoTemplate.Top <T>(firstIndex, maxSize, orderByGetter, where));
 }
Пример #12
0
 public TResult Count <TResult>(string propertyName, IWhereGetter where = null)
 {
     return(this.DaoTemplate.Count <T, TResult>(propertyName, where));
 }
Пример #13
0
 public TResult Min <TResult>(string propertyName, IWhereGetter where)
 {
     return(this.DaoTemplate.Min <T, TResult>(propertyName, where));
 }
Пример #14
0
        public IList <TEntity> Top <TEntity>(int firstIndex, int maxSize, IOrderByGetter orderByGetter, IWhereGetter where = null) where TEntity : class
        {
            var iCriteria = this.Session.CreateCriteria <TEntity>();

            iCriteria.SetFirstResult(firstIndex);
            iCriteria.SetMaxResults(maxSize);
            var list = iCriteria.List <TEntity>();

            return(list);
        }
Пример #15
0
 public TResult Count <TResult>(string propertyName, IWhereGetter where = null)
 {
     return(this.IBaseDao.Count <TDbEntity, TResult>(propertyName, where));
 }
Пример #16
0
        public IList <TDto> Top(int firstIndex, int maxSize, IOrderByGetter orderByGetter, IWhereGetter where = null)
        {
            var entities = this.IBaseDao.Top <TDbEntity>(firstIndex, maxSize, orderByGetter, where);
            var dtos     = MapToDto(entities);

            return(dtos);
        }