/// <summary> /// Gets the entity list from respersitory. /// </summary> /// <typeparam name="T"></typeparam> /// <param name="expressions">The criterion expressions,for example:new ICriterion[]{Restriction.Eq("AField","xy")}.</param> /// <param name="orders">The orders.</param> /// <returns></returns> public IList <T> GetList <T>(Hib.Criterion.ICriterion[] expressions, string associatePath, string alias, params Hib.Criterion.Order[] orders) { try { OpenConnect(); Hib.ICriteria criteria = _Session.CreateCriteria(typeof(T)); criteria.CreateAlias(associatePath, alias); if (expressions != null) { foreach (Hib.Criterion.ICriterion exp in expressions) { criteria.Add(exp); } } foreach (Hib.Criterion.Order o in orders) { criteria.AddOrder(o); } return(criteria.List <T>()); } catch (Exception ex) { LogExepttion(ex); throw; } finally { Disconnect(); } }
/// <summary> /// Gets the entity list from respersitory. /// </summary> /// <typeparam name="T"></typeparam> /// <param name="expressions">The criterion expressions,for example:new ICriterion[]{Restriction.Eq("AField","xy")}.</param> /// <param name="orders">The orders.</param> /// <returns></returns> public IList <T> GetList <T>(Hib.Criterion.ICriterion expression, params Hib.Criterion.Order[] orders) { try { OpenConnect(); Hib.ICriteria criteria = _Session.CreateCriteria(typeof(T)); if (expression != null) { criteria.Add(expression); } foreach (Hib.Criterion.Order o in orders) { criteria.AddOrder(o); } return(criteria.List <T>()); } catch (Exception ex) { LogExepttion(ex); throw; } finally { Disconnect(); } }
private void GetData(ISearchExpression searchExpression, IList <ISearchOrder> searchOrders, NHibernate.ISession session, ActionableList <object> actionList) { NHibernate.ICriteria criteria = CreateCriteria(session, searchExpression, searchOrders, ref m_hasCollection); OnCriteriaCreated(criteria); criteria.List(actionList); }
private System.Collections.IEnumerable GetData(ISearchExpression searchExpression, IList <ISearchOrder> searchOrders, NHibernate.ISession session) { NHibernate.ICriteria criteria = CreateCriteria(session, searchExpression, searchOrders, ref m_hasCollection); OnCriteriaCreated(criteria); return(criteria.List <T>()); //return criteria.Future<T>(); }
/// <summary> /// Gets the distict list. /// </summary> /// <typeparam name="T"></typeparam> /// <param name="distictPropertys">The distict propertys.</param> /// <param name="expressions">The expressions.</param> /// <param name="orders">The orders.</param> /// <returns></returns> public IList <object[]> GetDistinctList <T>(string[] distictPropertys, Hib.Criterion.ICriterion[] expressions, params Hib.Criterion.Order[] orders) { try { OpenConnect(); Hib.ICriteria criteria = _Session.CreateCriteria(typeof(T)); if (distictPropertys != null) { ProjectionList projects = Projections.ProjectionList(); foreach (string p in distictPropertys) { projects.Add(Projections.Property(p)); } criteria.SetProjection(Projections.Distinct(projects)); } else { throw new Exception("the disctinct property can't be null."); } if (expressions != null) { foreach (Hib.Criterion.ICriterion exp in expressions) { criteria.Add(exp); } } foreach (Hib.Criterion.Order o in orders) { criteria.AddOrder(o); } return(criteria.List <object[]>()); } catch (Exception ex) { LogExepttion(ex); throw; } finally { Disconnect(); } }
/// <summary> /// 分页读取 /// </summary> /// <param name="cri"></param> /// <param name="startIndex"></param> /// <param name="maxRows"></param> /// <param name="sortedBy"></param> /// <returns></returns> protected IList <T> GetAll(NHibernate.ICriteria cri, int startIndex, int maxRows, string sortedBy) { cri.SetFirstResult(startIndex); if (maxRows > 0) { cri.SetMaxResults(maxRows); } if (!string.IsNullOrEmpty(sortedBy)) { string[] ss = sortedBy.Split(new char[] { ' ' }, StringSplitOptions.RemoveEmptyEntries); if (ss.Length == 2 && ss[1].ToUpper() == "DESC") { cri.AddOrder(new NHibernate.Criterion.Order(ss[0], false)); } else { cri.AddOrder(new NHibernate.Criterion.Order(ss[0], true)); } } return(cri.List <T>()); }
public IList <SystemUser> GetByRestrictions(IDictionary <string, string> restrictions, string orderBy, bool ascending, int?limit) { using (ISession session = NHibernateHelper.OpenSession()) { NHibernate. ICriteria criteria = session.CreateCriteria <SystemUser>(); foreach (KeyValuePair <string, string> pair in restrictions) { criteria = criteria.Add(Restrictions.Eq(pair.Key, pair.Value)); } if (limit != null) { criteria = criteria.SetMaxResults((int)limit); } if (orderBy != null) { criteria = criteria.AddOrder(new Order(orderBy, ascending)); } return(criteria.List <SystemUser>()); } }
public ICollection <T> FindAll(NHibernate.ICriteria criteria) { return(criteria.List <T> ()); }