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]); }
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); }
public static ICriterion ToICriterion(IWhereGetter where) { ICriterion leftICriterion = null; var enumerator = where.Filter.Filters.GetEnumerator(); while (enumerator.MoveNext()) { leftICriterion = ConcatICriterionByFilters(leftICriterion, enumerator); } return(leftICriterion); }
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); }
public TDto FirstOrDefault(IWhereGetter where) { var entity = this.IBaseDao.FirstOrDefault <TDbEntity>(where); if (entity == null) { return(null); } var dto = MapToDto(entity); return(dto); }
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); }
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); }
public T FirstOrDefault(IWhereGetter where, IOrderByGetter iOrderByGetter = null) { return(this.DaoTemplate.FirstOrDefault <T>(where, iOrderByGetter)); }
public GenericPageResult <T> Page(IOrderByGetter orderBys, IWhereGetter where, int pageIndex = 1, int pageSize = 10) { return(this.DaoTemplate.Page <T>(orderBys, where, pageIndex, pageSize)); }
public IList <T> FindByProperties(IWhereGetter where, IOrderByGetter orderByGetter = null) { return(this.DaoTemplate.FindByProperties <T>(where, orderByGetter)); }
public IList <T> Top(int firstIndex, int maxSize, IOrderByGetter orderByGetter, IWhereGetter where = null) { return(this.DaoTemplate.Top <T>(firstIndex, maxSize, orderByGetter, where)); }
public TResult Count <TResult>(string propertyName, IWhereGetter where = null) { return(this.DaoTemplate.Count <T, TResult>(propertyName, where)); }
public TResult Min <TResult>(string propertyName, IWhereGetter where) { return(this.DaoTemplate.Min <T, TResult>(propertyName, where)); }
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); }
public TResult Count <TResult>(string propertyName, IWhereGetter where = null) { return(this.IBaseDao.Count <TDbEntity, TResult>(propertyName, where)); }
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); }